我在Symfony 4中使用FOSUserBundle。
在更新用户个人资料时,如果一切正常。这里触发了一个事件。
$this->eventDispatcher->dispatch(FOSUserEvents::PROFILE_EDIT_COMPLETED, new FilterUserResponseEvent($user, $request, $response));
触发此事件时,将从FlashListenner调用此方法
public function addSuccessFlash(Event $event, $eventName)
{
if (!isset(self::$successMessages[$eventName])) {
throw new \InvalidArgumentException('This event does not correspond to a known flash message');
}
$this->session->getFlashBag()->add('success', $this->trans(self::$successMessages[$eventName]));
}
但是,我的问题是:我如何才能抓住下一个被称为控制器的Flashbag,以便知道是否有要打印的Flash消息? 感谢您的帮助。
答案 0 :(得分:0)
如果您遇到相同的问题:有解决方案:
{% for msg in app.session.flashBag.get('success') %}