Bonjour,

Je suis débutante avec symfony2, ce que je veux faire consiste a passer un $id via le routing:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
SearchEngineBundle_vote:
    pattern:   /vote/{id}
    defaults:  { _controller: TutorialSF2SearchEngineBundle:SearchEngine:vote }
Passer le $id en paramètre dans mon contrôleur pour inserer les données saisie à partir d'un form :

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
public function voteAction($id) {
        $message = '';
        $em = $this->container->get('doctrine')->getEntityManager();
 
 
        // creation d’un nouveau article
        $vote = new Vote();
 
        //association entre les 2 objets articleform et le article
        $form = $this->container->get('form.factory')->create(new VoterForm(), $vote);
        //recuperation des données envoyer
        $request = $this->container->get('request');
        //la discussion de la methode d'envoi (seulement post) si get non servie
        if ($request->getMethod() == 'POST') {
            //recuperation des données envoyer par la formulaire et affecter a $form
            $form->bindRequest($request);
            //la validateur appartir du classe (modele)
            if ($form->isValid()) {
                $em->persist($vote);
                $em->flush();
 
                $message = 'Entreprise ajouté avec succès !';
                //$this->redirect('TutorialSF2SearchEngineBundle:SearchEngine:search.html.twig');
                 return $this->redirect($this->generateUrl('SearchEngineBundle_search'));
            }
        }
        //la methode createView est une methode predifini de la classe Form 
        return $this->container->get('templating')->renderResponse('TutorialSF2SearchEngineBundle:SearchEngine:vote.html.twig', array(
                    array('id' => $id),        
                    'form' => $form->createView(),
                    'message' => $message,
                       )
        );
    }
pourriez vous m'aider à trouver une solution svp