全局访问模板中的用户对象


Globally access to the user object in templates

到目前为止,我已经看到了一个Twig方法来了解用户权限

{% if is_granted('ROLE_USER') %}

但不涉及在每个控制器动作中都不传递对象的情况下获得经身份验证的用户信息。

在寻找如何将全局变量传递到我的布局之前,我想知道是否有任何"标准"方法可以访问我的布局或防火墙覆盖的任何模板中的安全提供商用户对象(至少是实体用户的用户名和数据库信息)。

尝试{{ app.user }}

app模板变量使您可以访问许多您期望的全局变量,如requestsessionsecurity等。查看源代码了解更多信息。

需要注意的一点是,虽然GlobalVariables类为所有变量提供getter,但Twig足够聪明,知道如何处理缩写形式,因此{{ app.user }}等效于{{ app.getUser() }}