【发布时间】:2012-05-03 11:16:42
【问题描述】:
我想显示类似的东西:
案例 1:“以 USER 身份登录”
@用户名 [注销]
这里没有问题,我只是这样做:
@ {{ app.user.username}} [ 注销 ]
案例 2:“以管理员身份登录”
@AdminName [注销]
这里也一样:
@ {{ app.user.username}} [ 注销 ]
案例 3:“以 ADMIN 身份登录冒充用户”
管理员名@用户名[返回]
现在这是一个问题:
{{ ??..what here..?? }} @ {{ app.user.username}} [ 返回 ]
这是我所知道的唯一解决方案...显示用户名的 sipmle 似乎有很多代码:/
{# iterating through user roles to find ROLE_PREVIOUS_ADMIN #}
{% for role in app.security.token.roles %}
{% if role.source is defined %}
{{ role.source.user.username }}
{% endif %}
{% endfor %}
@ {{ app.user.username }} [ <a href="{{ (app.request.getRequestUri ~ '?_switch_user=_exit') }}">return</a> ]
还有其他方法吗?我需要一个纯 TWIG 解决方案 -> 这应该是我的主要树枝模板的一部分(由所有其他模板扩展)-> 我不能将控制器代码添加到所有操作中,仅用于显示用户名。
【问题讨论】:
-
你知道如何在 Symfony3 中做到这一点吗? app.security 变量为deprecated since v2.6 and was removed in v3。
-
@user5670895 试试这个:stackoverflow.com/a/68294209/526495