Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/jpa/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Symfony 登录到/If用户已通过身份验证时的Sonata页面重定向到仪表板/配置文件/_Symfony_Dashboard_Sonata - Fatal编程技术网

Symfony 登录到/If用户已通过身份验证时的Sonata页面重定向到仪表板/配置文件/

Symfony 登录到/If用户已通过身份验证时的Sonata页面重定向到仪表板/配置文件/,symfony,dashboard,sonata,Symfony,Dashboard,Sonata,我没有主页的控制器操作,因为Sonata页面是强制的。但当用户已经通过身份验证并返回根目录/(基本上是主页)时,我希望经过身份验证的用户的新主页成为他的仪表板(地址/配置文件/),这就是为什么我想出了从主页(/)到仪表板(/配置文件/)的重定向 在哪里/如何放置此重定向?(并避免javascript重定向) 感谢您的帮助您无需设置重定向,只需在配置文件中添加默认目标路径即可: firewalls: secured_area: form_login: always_us

我没有主页的控制器操作,因为Sonata页面是强制的。但当用户已经通过身份验证并返回根目录/(基本上是主页)时,我希望经过身份验证的用户的新主页成为他的仪表板(地址/配置文件/),这就是为什么我想出了从主页(/)到仪表板(/配置文件/)的重定向

在哪里/如何放置此重定向?(并避免javascript重定向)


感谢您的帮助

您无需设置重定向,只需在配置文件中添加默认目标路径即可:

firewalls:
  secured_area:
    form_login:
        always_use_default_target_path: true
        default_target_path: /loggedinpage
好的,我知道了 您只需创建您的操作:

/**
 * Home page
 *
 * @Route("/", name="homepage")
 */
public function homeAction()
{
    /** @var User $user */
    $user = $this->get('security.token_storage')->getToken()->getUser();
    if (is_object($user) and $user instanceof User) {
        return $this->redirectToRoute('sonata_user_profile_show');
    }

    return $this->render('YourBestBundle:Template:template_home_layout.html.twig');
}

然后,在数据库“页面”表中搜索父页面id=null的主页路径,并在“路径名称”列中选择“页面”slug(表示由sonata页面处理),替换为新的主页路径“主页”(来自homeAction())。就这样

不行!这项工作适用于刚刚登录的用户(在我的情况下重定向到/profile/)。但是,如果用户再次访问主页/则其仪表板(/profile/)上没有重定向。这就是我想做的。无论如何谢谢你我找到了一个相关的问题