尝试通过
显示登录用户的用户名{{ app.user.username }}
base.html.twig中的给了我一个像
这样的错误Impossible to access an attribute ("username") on a NULL variable ("") in ::base.html.twig at line 45
像
那样接受它{{ app.security.getToken().getUser().getUsername() }}
会导致以下错误。
Impossible to invoke a method ("getUser") on a NULL variable ("")
如何在symfony中全局访问登录用户的属性?如何解决错误?
答案 0 :(得分:22)
首先尝试检查用户是否存在,然后获取其用户名:
{% if app.user %}
{{ app.user.username }}
{% endif %}
或者使用三元运算符:
{{ app.user ? app.user.username }}
如果username为空,您可以使用default Twig过滤器设置默认值:
{{ app.user.username|default('undefined') }}