symfony - 登录后从登录页面重定向FOSUserBundle

标签 symfony redirect login fosuserbundle

我只是希望管理员用户或前端用户即使登录后仍尝试访问登录页面

/admin/login (admin user) 

要么
/login (front end user)

然后应将其重定向回相关的首页,例如/admin/

最佳答案

您可以覆盖FOSUserBundle\Controller\SecurityController并将以下代码添加到loginAction的顶部。

use Symfony\Component\HttpFoundation\RedirectResponse;

// ...

public function loginAction(Request $request)
{
    $authChecker = $this->container->get('security.authorization_checker');
    $router = $this->container->get('router');

    if ($authChecker->isGranted('ROLE_ADMIN')) {
        return new RedirectResponse($router->generate('admin_home'), 307);
    } 

    if ($authChecker->isGranted('ROLE_USER')) {
        return new RedirectResponse($router->generate('user_home'), 307);
    }

    // ... 

关于symfony - 登录后从登录页面重定向FOSUserBundle,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18783381/

相关文章:

php - 使用 Capifony 部署我的 Symfony2 应用程序已经开始破坏实时版本的缓存

python - 我可以将我的 python/ipython 输入/输出重定向到文本文件吗?

.htaccess - htaccess 将所有页面重写到另一个域上的同一页面

MySQLi登录脚本显示空白页面

json - Symfony 2 错误页面响应

forms - Symfony2 表单重复元素自定义标签

forms - Symfony 登录页面的表单构建器

javascript - 在 Python 中使用 Mechanize 在标签内的输入中输入用户名

symfony2 : how to set a user attribute (that is not in the form) after submitting a registration form?

Sharepoint 2010 事件接收器中的重定向