Flash symfony

Par Levy Stephane, il y a 2 ans


Salut tout le monde j'espere que vous allez bien. Quelqu'un a t'il une idée de comment ajouter des messages flash hors des controller? étant donné que la méthode geFlashBag() n'est plus disponible dans la SessionInterface.

2 réponses

Grafikart, il y a 2 ans

Tu peux obtenir la session depuis la requête. En injectant RequestStack tu peux récupérer la requête courante et obtenir ensuite la session

Levy Stephane, il y a 2 ans

ca fonction mais avecune erreur j'ignore pourquoi. J'obtient l'erreur invlide method getFlashBag() dans l'editeur de code si je ne precise pas ca if ($session instanceof Session) . et puis en cherchant dans SessionInterface cette methode n'exite pas, je ne sais si c'est mon projet qui a été mal installer depuis le debut.

public function setFirsOauthSuccessFlashMessage() { $session = $this->request->getSession(); $is_firstOauth = $session->get('is_firstOauth', false); if (true === $is_firstOauth) { if ($session instanceof Session) $session->getFlashBag()->add("info", " Un mot de passe par défaut a été créé pour vous. N'oubliez pas de le modifier en cliquant ici <a href='password'>mot de passe oublié</a> ou en le faisant depuis le formulaire d'identification." ); $session->remove('is_firstOauth'); } }