php – 在FOSUserBundle中,如何创建备用注销
发布时间:2020-12-13 17:12:56 所属栏目:PHP教程 来源:网络整理
导读:使用FOSUserBundle和Symfony2, 在我的网站中,根据登录用户的角色,我想让Logout交替重定向到两个不同的页面. 所以,我想做这样的事情: {% if is_granted("ROLE_PREMIUM") %} a href="{{ path('fos_user_security_logout_premium') }}"{{ 'layout.logout'|tran
使用FOSUserBundle和Symfony2,
在我的网站中,根据登录用户的角色,我想让Logout交替重定向到两个不同的页面. 所以,我想做这样的事情: {% 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> 但是,由于所有注销都是在config.yml中完成的,所有这些配置都是关于登录和注销的,我不知道如何配置第二个触发器并实现它.实际上,我唯一想做的就是根据角色将用户重定向到两个不同的页面.其余的都应该保持不变. 在security.yml中放置什么东西? logout: path: /logout target: /main/user 非常感谢 解决方法
您可以将customLogoutHandler添加到security.yml配置中.
firewalls: main: # - the name of your secure area logout: path: /logout target: / success_handler: your_bundle.custom_logout_handler 例如,your_bundle.custom_logout_handler将负责注销您的用户并根据类似的_target_url参数重定向他. 见 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |