Php 表单操作重定向到另一个控制器Symfony2.8
我有个奇怪的问题。我想将动作设置为窗体以重定向到另一个控制器。 我有2个控制器用于用户和地址。在route/{id}/modify上,我们在users controller twig中,有一个生成的表单:Php 表单操作重定向到另一个控制器Symfony2.8,php,symfony,controller,Php,Symfony,Controller,我有个奇怪的问题。我想将动作设置为窗体以重定向到另一个控制器。 我有2个控制器用于用户和地址。在route/{id}/modify上,我们在users controller twig中,有一个生成的表单: $add=new Address(); $formAddress=$this->createFormBuilder($add) ->setAction($this->redirectToRoute("/{id}/addAddress",
$add=new Address();
$formAddress=$this->createFormBuilder($add)
->setAction($this->redirectToRoute("/{id}/addAddress",array('id'=>$id)))
->add("city","text")
->add("street","text")
->add("housenumber","text")
->add("flatnumber","text")
->add("send","submit")
->getForm();
提交后,我想被重定向到地址控制器,地址控制器的路由是/{id}/addAddress,在这里处理表单。
提前感谢您的回答!干杯 您的操作不正确。如果使用函数
redirectToRoute
,则需要路由名称
// redirect to a route with parameters
return $this->redirectToRoute('blog_show', array('slug' => 'my-page'));
第一个参数(字符串)是您尝试将表单发送到的路由的名称。否则,您必须使用重定向并使用generateUrl
获取url,该url的作用相同,但redirectToUrl
较新且较短
检查,您应该使用
->setAction($this->generateUrl('target\u route\u name',['id'=>$id]))
谢谢您的帮助!使用了几十种变体,效果非常好!