Symfony 4 redirectToRoute不要使用Post方法发送参数

时间:2018-11-10 03:45:41

标签: symfony4

redirectToRoute方法不将参数发送到其他路由 PS:我使用POST方法

第一条路线:

/**
 * @Route("/CheckAuthentification",name="security_authentification")
 */
public function authentification(Request $request)
{
    *
    *
    *
        return $this->redirectToRoute('profil', ['categories'=>$categories,'user'=>$user]);
   }

第二条路线:

/**
 * @Route("/Profil",name="Profil_page")
 */
public function profil($categories,$user)
{
    return $this->render('user/profil.html.twig',['categories'=>$categories,'user'=>$user]);
}

错误:

  

控制器“ App \ Controller \ ProfilController :: profil()”要求   您为“ $ categories”参数提供了一个值。要么   参数为可空值,未提供空值,无默认值   已提供值,或因为存在非可选参数   在这之后。

1 个答案:

答案 0 :(得分:0)

解决方案是在会话中发送对象 第一条路线:

$this->container->get('session')->set('user', $user);
$this->container->get('session')->set('categories', $categories);
return $this->redirectToRoute('profil');

第二条路线:

$user = $this->container->get('session')->get('user');
$categories = $this->container->get('session')->get('categories');
return $this->render('user/profil.html.twig',['categories'=>$categories,'user'=>$user]);