我想覆盖Symfony 3中的错误模板。我首先创建了带有个性化树枝的TwigBundle文件夹。
app/
└─ Resources/
└─ TwigBundle/
└─ Exception/
├─ error404.html.twig
├─ error403.html.twig
├─ error.html.twig
然后我检查了包含以下行的routing_dev
文件:
_errors:
resource: "@TwigBundle/Resources/config/routing/errors.xml"
prefix: /_error
Symfony仍显示默认错误模板。我想知道是否应该验证其他内容。
PS:我已经检查过此文档:How to Customize Error Pages
编辑:
答案 0 :(得分:0)
被覆盖的文件应位于名为views
的子文件夹中。正确的文件树如下所示:
app/
└─ Resources/
└─ TwigBundle/
└─ views/
└─ Exception/
├─ error404.html.twig
├─ error403.html.twig
├─ error.html.twig
之后清除缓存。
请注意,这些被覆盖的错误模板不会在dev
环境中显示不。
如果要在dev
环境中测试模板,则必须确保已将以下内容导入routing_dev.yml
:
_errors:
resource: "@TwigBundle/Resources/config/routing/errors.xml"
prefix: /_error
现在您可以访问/_error/<error-code>.html
(即集成网络服务器上的localhost:8000/_error/404.html
)