Symfony 4的事件响应

时间:2018-12-28 22:38:26

标签: symfony fosuserbundle symfony4

我在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消息? 感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

如果您遇到相同的问题:有解决方案:

{% for msg in app.session.flashBag.get('success') %}