I get WSOD when I try to access the views page (admin/structure/views).

I get the notice below in the error log followed by the error.

Notice: Undefined index: id in Drupal\Core\Config\Entity\Query\Query->Drupal\Core\Config\Entity\Query\@closure() (line 92 of /home/pierost0/public_html/core/lib/Drupal/Core/Config/Entity/Query/Query.php).

Drupal\Core\Entity\EntityMalformedException: The "view" entity cannot have a URI as it does not have an ID in Drupal\Core\Entity\Entity->toUrl() (line 189 of /home/pierost0/public_html/core/lib/Drupal/Core/Entity/Entity.php).

I have disabled all views through Drush but there's seems to be one empty view. Take notice on the screenshot. An empty view is enabled.

enter image description here

Is that view my problem? Where are the views files, or entries in the db so I can have a look for the solution there.

  • drush cex and then examining the files core/config/sync/views.view.*.yml might be helpful for debugging. – Hudri Dec 7 '18 at 15:48
  • The command didn't help. The path you are pointing doesn't exit. Mine is core/config/ and there's no sync folder. – pierostz Dec 7 '18 at 15:58
  • 2
    The error says one of your views does not have an ID, in views thats the machine name. – No Sssweat Dec 8 '18 at 15:52
  • 1
    Try using drush config-list to locate the config related to that view, then use drush config-delete $config (I would avoid directly editing the DB) – Daniel Harper Dec 13 '18 at 14:29
  • @pierostz please go to your file /home/pierost0/public_html/core/lib/Drupal/Core/Entity/Entity.php and add kint('test'); and provide me backtrack callback (click icon plus in line →Called from <ROOT>/modules/contrib/devel/kint/kint.module:18 [kint()]) – Jonh Dec 13 '18 at 16:03

If you have access to the database check the table config for all entries starting with views.view.*
One of these entries might be empty or with a corrupt uuid. If so, take a backup of your database and try to manually delete this entry and see what happens.

Update According to coments below I suggest taking a database backup and then delete views one by one from the database until the error is gone

  • Thanks for the input. I'll have a look on that table. – pierostz Dec 11 '18 at 7:53
  • Hey @Ismail Cherri. None of the views in the DB is empty. So I guess is a uuid issue. How can I find if uuid is corrupted or not? – pierostz Dec 13 '18 at 10:01
  • If possible, can you paste the views data from the database? Or you can check them manually comparing uuids. It is difficult because each view contains a lot of data unfortunately but I can't think of anything else. – Ismail Cherri Dec 13 '18 at 11:51
  • Another thing to do, which is also daunting, is to delete them one by one until the error goes away! Take backup first of course – Ismail Cherri Dec 13 '18 at 11:52
  • I think at this point I will try the latter. – pierostz Dec 13 '18 at 11:53

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.