3
我想重定向并将我的请求发送到另一个路由,但此方法不起作用。Symfony重定向请求
return $this->redirect($this->generateUrl(
'admin_platform_create',
array('request' => $request)
));
当我抵达成admin_platform_create没有通过,如果
public function createAction(Request $request)
{
if ($request->getMethod() == 'POST')
{
虽然这是工作,
return $this->forward('AdminPlatformBundle:Manage:edit',
array('request' => $request));
这不是我所需要的,因为它不是写新的网址。
感谢您的帮助!
为什么你要传递的Request对象作为参数? 'Request'对象表示当前的请求。 – COil
浏览器通过为新位置发出_GET_请求来遵循重定向 - 因此,您不能期望此后可以访问任何POST数据。 (作为解决方法,您可以尝试将接收到的POST数据存储到会话中,重定向,然后在目标处再次读取会话中的数据。虽然对于大量请求,这可能会影响性能。) – CBroe
如果我不'将Request对象作为参数传递给我: 控制器“Admin \ PlatformBundle \ Controller \ ManageController :: createAction()”要求您为“$ request”参数提供一个值(因为没有默认值或因为在这之后有一个非可选参数)。 – Hewyn