Я устанавливаю флэш-сообщение в своем контроллере при рендеринге шаблона ветки. Если есть действие публикации, я хотел бы перенаправить на ту же страницу, но изменить флэш-сообщение.
if ($request->isMethod('POST')) {
...
...
$this->get('session')->getFlashBag()->clear(); // Does not work
$this->get('session')->getFlashBag()->all(); // Does not work
$request->getSession()->getFlashBag()->set('user-notice', $flash_message2);
return $this->redirect($request->headers->get('referer'));
}
$this->get('session')->getFlashBag()->set('user-notice', $flash_message1);
return $this->render(....
Но проблема в том, что отображаемые флэш-сообщения — это $flash_message1, а должно быть $flash_message2.
При попытке использовать add вместо set я вижу их обоих. Я попытался использовать функции Symfony2 clear()
и all()
: http://api.symfony.com/2.3/Symfony/Component/HttpFoundation/Session/Flash/FlashBagInterface.html, но ничего не изменилось.
Есть идеи? Спасибо !!!
clear()
иset()
? - person Nicolai Fröhlich   schedule 19.11.2013problem is that the displayed flash messages is the 1st one.
... какое сообщение возвращается, если вы отправляете запрос POST? ... $flash_message или $flash_message 2 ? - person Nicolai Fröhlich   schedule 19.11.2013