gpt4 book ai didi

symfony - 为什么覆盖错误模板时没有捕获到异常?

转载 作者:行者123 更新时间:2023-12-04 04:56:31 25 4
gpt4 key购买 nike

我关注了Symfony2.2 documentation on customising error templates并覆盖 app/Resources/TwigBundle/views/Exception/error.html.twig 处的默认错误模板如 Twig 所述。

例如,在某些 Controller 中,当数据库实体不存在时,我会抛出自定义 404。我正在这样做:

throw $this->createNotFoundException('Thing not found');

当我的自定义模板存在时,这个异常不会被捕获,所以我的错误页面永远不会呈现,我得到一个 fatal error 。我没有更改与异常处理程序有关的任何内容,所以我不明白为什么覆盖模板会破坏 Symfony 错误呈现功能。

它看起来像 Twig 异常 Controller 的 showAction正在执行,但异常仍然被抛出堆栈。

需要做些什么来确保捕获并呈现异常?

附加信息:

记录以下内容。 (仅更改客户名称)
[2013-05-22 16:26:22] request.INFO: Matched route "show_thing" (parameters: "_controller": "Client\SiteBundle\Controller\ThingController::indexAction", "id": "thing", "_route": "show_thing") [] []
[2013-05-22 16:26:22] security.INFO: No expression found; abstaining from voting. [] []
[2013-05-22 16:26:22] request.ERROR: Uncaught PHP Exception Symfony\Component\HttpKernel\Exception\NotFoundHttpException: "thing not found" at /home/vhosts/client/symfony/vendor/symfony/symfony/src/Symfony/Bundle/FrameworkBundle/Controller/Controller.php line 149 [] []

最佳答案

我解决了。

我的模板有一个未在布局中定义的 block 。

此错误未记录,但足以破坏渲染,

感谢@nifr 的所有帮助。

关于symfony - 为什么覆盖错误模板时没有捕获到异常?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16689452/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com