{% if is_granted('ROLE_PREVIOUS_ADMIN') %}
{% for role in app.token.roles %}
{% if role.role == 'ROLE_PREVIOUS_ADMIN' %}
{% for role_from_previous in role.source.roles if role_from_previous.role == "ROLE_DELETE" %}
{{ role.source.user.username }} has "ROLE_DELETE"
{% endfor %}
{% endif %}
{% endfor %}
{% endif %}
5条答案
按热度按时间uqcuzwp81#
我已经有一段时间没有使用Symfony2了,所以我不确定,但是当你切换到另一个用户时,你会获得分配给该用户的所有角色和一个额外的角色:
ROLE_PREVIOUS_ADMIN
。所以我想你需要做的就是使用voter来检查这样的角色是否被分配给了使用voter的当前用户。字符串
pwuypxnk2#
如何获取有关模拟器的更多详细信息的示例:
字符串
然后,您将admin_user作为原始用户对象。请记住使用SwitchUserRole。
nzkunb0c3#
一个如何在tig中显示模拟器的示例:
字符串
i2loujxw4#
如果您需要从上一个管理员用户测试角色:
Symfony 3.4
字符串
xdnvmnnf5#
要获取控制器中的原始用户,可以使用以下代码:
字符串