如何捆绑重定向&在Symfony2中一起渲染响应

时间:2016-07-07 16:21:26

标签: php symfony

我正在编写一个Symfony2控制器。我的控制器删除用户,然后显示成功或失败消息。这是有效的,响应如下:

return $app['twig']->render('index.twig', array('list' => $list,'msg' => $msg));

有一个问题。该网站登陆index/{username}/。我希望该网站改为登陆index/并在那里显示消息。我可以使用以下响应重定向:

return new RedirectResponse('/index/users/');

问题是我如何将两个回复捆绑在一起,所以我重定向到index/并在那里显示消息?

1 个答案:

答案 0 :(得分:1)

你不能将2个不同的响应捆绑在一起......控制器必须返回某种类型的Response对象......只有一个......

您最好的解决方案是利用Flash消息...您可以将消息存储在flashbag(基本上是会话)中,然后在重定向后在“索引”上查看它。他们被称为闪光,因为它们在第一次阅读后消失了......

您也可以在内部forward向另一个控制器发出请求,而不会实际向浏览器发送301 .. ...这可能是您可以使用的另一种解决方案......