Bonjour à tous j'ai un problème je voudrais afficher un message flash issue de ma session le message est bien là existe mais n'ai jamais affiché
mon controller
mon twig:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60 <?php namespace Qcm\SalleTpBundle\Controller; use Symfony\Bundle\FrameworkBundle\Controller\Controller; use Symfony\Component\HttpFoundation\Response; use Qcm\SalleTpBundle\Entity\Salle; use Symfony\Component\HttpFoundation\Request; class SalleController extends Controller { public function indexAction() { $session = $this->get('session'); if ($session->has('nbreFois')) $session->set('nbreFois', $session->get('nbreFois')+1); else $session->set('nbreFois', 1); \Doctrine\Common\Util\Debug::dump($this->get('session')->getFlashBag()->get('infoAjout'));//pour le debugage return $this->render('QcmSalleTpBundle:Salle:index.html.twig', array('nbreFois' => $session->get('nbreFois'))); } public function voirSalleAction($id) { $repository = $this->getDoctrine()->getManager() ->getRepository('QcmSalleTpBundle:Salle'); $salle = $repository->find($id); if($salle === null) throw $this->createNotFoundException('Salle[id='.$id.'] inexistante'); return $this->render('QcmSalleTpBundle:Salle:voirSalle.html.twig', array('nomSalle' => $salle->__toString())); } public function ajouterSalleAction(Request $request) { $salle = new Salle; $form = $this->createFormBuilder($salle) ->add('batiment', 'text') ->add('etage', 'text') ->add('numero', 'text') ->add('envoyer', 'submit') ->getForm(); $form->handleRequest($request); if ($form->isValid()) { { $entityManager = $this->getDoctrine()->getManager(); $entityManager->persist($salle); $entityManager->flush(); $this->get('session')->getFlashBag()->add('infoAjout', 'nouvelle salle '.$salle->__toString()); $url = $this->generateUrl('qcm_salle_tp_accueil'); /*\Doctrine\Common\Util\Debug::dump($this->get('session')->getFlashBag()); return new Response('<html><body></body></html>');*/ return $this->redirect($url); } } return $this->render('QcmSalleTpBundle:Salle:ajouterSalle.html.twig', array('form' => $form->createView())); } }
cela ne m'affiche rien
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 <html> <body> <h1>Les salles de TP</h1> <p><i>page visitée {{ nbreFois }} fois.</i></p> <ul> messages : {# affichage de message flash s'il y a #} {% for message in app.session.flashbag.get('infoAjout') %} <li>{{ message }}</li> {% endfor %} </ul> <p>voir la salle <a href="{{ path('qcm_salle_tp_voir_salle', { 'id': 3 }) }}">3</a></p> <p><a href="{{ path('qcm_salle_tp_ajouter_salle') }}">ajouter une salle</a></p> </body> </html>
pourtant dans mon debug ma variable infoAjout affiche bien toutes les informations " nouvelle salle ..." donc elle est bien transmise mais il n'arrive pas à l'afficher seriez-vous m'aider s'il vous plaît?
Partager