Несмотря на все мои попытки понять проблему, я до сих пор не могу понять, что происходит. Я разработал веб-сайт с Symfony 2.7, который отлично работает в режиме разработки. Когда я тестировал его в рабочем режиме, возвращается ошибка 500.
Исключение составляет:
Uncaught PHP Exception Symfony\Component\Debug\Exception\FatalErrorException:
"Error: Call to a member function getCacheFactory() on a non-object" at
/home/admdev-php/public_html/sfSUAPS/vendor/doctrine/orm/lib/Doctrine/ORM/UnitOfWork.php line 3039
{"exception":"[object] (Symfony\\Component\\Debug\\Exception\\FatalErrorException(code: 0):
Error: Call to a member function getCacheFactory() on a non-object at
/home/admdev-php/public_html/sfSUAPS/vendor/doctrine/orm/lib/Doctrine/ORM/UnitOfWork.php:3039)"} []
Итак, я попытался очистить кеш, и у меня было то же сообщение:
[Symfony\Component\Debug\Exception\FatalErrorException]
Compile Error: require(): Failed opening required
'/home/stagiaire/workspace/suaps/app/cache/prod/doctrine/orm/Proxies/__CG__AppBundleEntityPlace.php'
(include_path='.:/usr/share/php:/usr/share/pear')`
Я пытался очистить кеш доктрины, но это не решает проблему.
Есть несколько ролей: одна для студентов, одна для учителей и одна для администраторов. Я получаю эту ошибку только тогда, когда моя роль - студент. Поэтому я присмотрелся к методам, которые касаются, и прокомментировал все, что связано с учебой, и это сработало. Поэтому я думаю, что ошибка связана с моим репозиторием сущностей, поскольку «findBy» и «findAll» не работают.
Я просмотрел код Symfony, но ошибка, похоже, на моей стороне. Я действительно не знаю, что происходит, спасибо, если вы можете мне помочь.
Проблема решена
Оказывается, кто-то использовал сущность прямо из кеша...