【发布时间】:2019-06-15 22:53:26
【问题描述】:
我的数据库中只有 1 行,当我将此代码放在我的 AnnouncementController 上时,我有一个 500 错误页面。
public function search(AnnouncesRepository $announcesRepository){
$announces = $announcesRepository->findAll();
return $this->render('announces/search.html.twig', ['announces' => $announces]);
}
日志:
2019-01-22T12:47:53+00:00 [info] Matched route "announcement_search".
2019-01-22T12:47:53+00:00 [debug] Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\DebugHandlersListener::configure".
2019-01-22T12:47:53+00:00 [debug] Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\ValidateRequestListener::onKernelRequest".
2019-01-22T12:47:53+00:00 [debug] Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\SessionListener::onKernelRequest".
2019-01-22T12:47:53+00:00 [debug] Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\RouterListener::onKernelRequest".
2019-01-22T12:47:53+00:00 [debug] Notified event "kernel.request" to listener "Symfony\Bundle\FrameworkBundle\EventListener\ResolveControllerNameSubscriber::onKernelRequest".
2019-01-22T12:47:53+00:00 [debug] Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\LocaleListener::onKernelRequest".
2019-01-22T12:47:53+00:00 [debug] Notified event "kernel.controller" to listener "Sensio\Bundle\FrameworkExtraBundle\EventListener\ControllerListener::onKernelController".
2019-01-22T12:47:53+00:00 [debug] Notified event "kernel.controller" to listener "Sensio\Bundle\FrameworkExtraBundle\EventListener\ParamConverterListener::onKernelController".
2019-01-22T12:47:53+00:00 [debug] Notified event "kernel.controller" to listener "Sensio\Bundle\FrameworkExtraBundle\EventListener\HttpCacheListener::onKernelController".
2019-01-22T12:47:53+00:00 [debug] Notified event "kernel.controller" to listener "Sensio\Bundle\FrameworkExtraBundle\EventListener\TemplateListener::onKernelController".
2019-01-22T12:47:53+00:00 [debug] Notified event "kernel.controller_arguments" to listener "Sensio\Bundle\FrameworkExtraBundle\EventListener\IsGrantedListener::onKernelControllerArguments".
2019-01-22T12:47:53+00:00 [debug] SELECT t0.id AS id_1, t0.society_id AS society_id_2, t0.job AS job_3, t0.city AS city_4, t0.desired_city AS desired_city_5, t0.slug AS slug_6, t0.user_id AS user_id_7, t0.created AS created_8, t0.description AS description_9, t
0.user_id AS user_id_10 FROM announces t0
[Tue Jan 22 13:47:54 2019] 127.0.0.1:56133 [500]: /rechercher - Allowed memory size of 134217728 bytes exhausted (tried to allocate 65028096 bytes) in C:\wamp64\www\permutation\permutation\vendor\twig\twig\lib\Twig\Extension\Debug.php on line 50
2019-01-22T12:47:54+00:00 [critical] Fatal Error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 65028096 bytes)
仅当我使用 find($id) 或 findOne 时才有效。
感谢您的帮助!
编辑:
{% for announce in announces %} {{ dump(announce) }} {% endfor %}
我清除了缓存,是的,增加内存不是好主意,我只有 1 行!在我的模板中,我也尝试了转储宣布,但我有同样的错误。如果我删除转储,我有任何错误。
【问题讨论】:
-
日志中的错误来自 twig -> 因此在您的 search.html.twig 内部 - 您可以进一步对公告执行 var_dump 以查看其中的真正内容吗?
-
增加内存限制不是个好主意,还有问题,他在表中只有一行
-
可能是模板中的无限循环?
-
在开发模式下运行您的应用程序并查看错误消息的内容。尝试在生产模式下调试应用程序充其量是具有挑战性的。顺便说一句,在生产中使用转储也是不行的。
标签: php symfony memory symfony4