0

我使用自己的操作来处理树枝中的异常。

# Twig Configuration
twig:
    exception_controller:  MyBundle:Default:showException

问题是,我实际上已经对我的应用程序进行了身份验证,但是在这个特殊的控制器中,令牌是空的。

有人有解决这个问题的想法吗,因为我在树枝模板中使用了用户对象。

4

1 回答 1

-1

文档

设计自定义错误页面时的常见陷阱之一是在错误模板(或在错误模板继承的任何父模板中)使用 is_granted() 函数。如果你这样做,你会看到 Symfony 抛出一个异常。

这个问题的原因是路由是在安全之前完成的。如果发生 404 错误,则不会加载安全层,因此 is_granted() 函数未定义。解决方法是在使用此功能之前添加以下检查:

{% if app.user and is_granted('...') %}
    {# ... #}
{% endif %}
于 2016-01-05T10:05:29.530 回答