使用 FOSUserBundle 和 Symfony2,
在我的站点中,根据登录用户的角色,我想让注销以交替重定向到两个不同的页面。
所以,我想做这样的事情:
{% if is_granted("ROLE_PREMIUM") %}
<a href="{{ path('fos_user_security_logout_premium') }}">{{ 'layout.logout'|trans({}, 'FOSUserBundle') }}</a>
{% else %}
<a href="{{ path('fos_user_security_logout') }}">{{ 'layout.logout'|trans({}, 'FOSUserBundle') }}</a>
{% endif %}
然后,不知何故,做这样的事情:
<route id="fos_user_security_logout" pattern="/logout">
<default key="_controller">FOSUserBundle:Security:logout</default>
</route>
<route id="fos_seller_security_logout" pattern="/logoutPremium">
<default key="_controller">FOSUserBundle:Security:logoutPremium</default>
</route>
但是,由于 all in logout 都是在 中完成的config.yml
,所以将所有这些关于登录和注销的配置都放在了,我不知道如何配置第二个触发器并实现它。实际上,我唯一想做的就是根据角色将用户重定向到两个不同的页面。其余的都应该保持不变。
有什么可以放在这里的security.yml
吗?
logout:
path: /logout
target: /main/user
非常感谢