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

时间:2012-02-22 18:38:11

标签: php templates symfony twig

到目前为止,我已经看到了一种知道用户权限的Twig方法

{% if is_granted('ROLE_USER') %}

但没有关于获取身份验证的用户信息,而没有在每个控制器操作中传递对象。

在寻找如何将全局变量传递给我的布局之前,我宁愿知道是否有任何“标准”方式来访问我的安全提供程序用户对象(至少是实体用户的用户名和数据库信息)我的布局或防火墙覆盖的任何模板。

1 个答案:

答案 0 :(得分:9)

尝试{{ app.user }}

app模板变量可让您访问许多您期望的全局变量,例如requestsessionsecurity等。 source code获取更多信息。

您应该注意的一点是,虽然GlobalVariables类为所有变量提供了getter,但Twig非常聪明,知道如何处理短格式,因此{{ app.user }}是相当于{{ app.getUser() }}