Я портирую проект на symfony2.2 на symfony3.4. У меня есть LoginListener с событием onSecurityInteractiveLogin. Когда пользователь вошел в систему, мне нужно что-то проверить. Если проверка не удалась, пользователь должен выйти из системы и показать некоторые флеш-сообщения. Код ниже прекрасно работает в symfony2. В Symfony3 все работает хорошо, кроме флеш-сообщений, это не показывает, я думаю, что сессия очищена. Как показывать флеш-сообщения в форме входа?
public function onSecurityInteractiveLogin(InteractiveLoginEvent $event)
{
$user = $event->getAuthenticationToken()->getUser();
if ($user instanceof UserInterface) {
// Make some check based on user info in database...
$check = true || false;
// Logout user and set flash
if(!$check){
$request = $event->getRequest();
$session = $this->container->get('session');
$session->start();
$session->getFlashBag()->add('error','message');
$request->request->set('_target_path', '/logout');
}
}
}