Bonjour,

Je fais un formulaire de recherche sur une vue :
mon formulaire ArgusSearchType.php :
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
 
<?php
namespace quad\MainBundle\Form;
 
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\FormBuilder;
 
class ArgusSearchType extends AbstractType
{
   public function buildForm(FormBuilder $builder, array $options)
   {
       $builder
       		->add('annee', 'text',array('label'=>'Année','required'=>false))
       		->add('modele' ,'entity',array('class' => 'quad\\MainBundle\\Entity\\Modele','label'=>"Modele",'property' => 'modele','required'=>false))
       		->add('actif', 'choice',array('choices'=>array(0=>"Non",1=>"Oui"),'label'=>'Actif','required'=>false));
   }
 
   public function getName()
   {
       return 'argus_search';
   }
 
    public function getDefaultOptions(array $options)
    {
    	return array(
    'data_class' => 'quad\MainBundle\Entity\ArgusSearch',
    );
    }
}
Mon controller :

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
 
public function indexAction()
    {
 
        $em = $this->getDoctrine()->getEntityManager();
 
		$entity = new ArgusSearch();
        $form = $this->createForm(new ArgusSearchType(), $entity);
 
        $request = $this->getRequest();
 
        $form->bindRequest($request);
 
    	if ($form->isValid() && $request->getMethod() == 'POST') {
			$data = $form->getData();
			$annee = $form["annee"]->getData();
			$modeleId = $form["modele"]->getData();
			echo "modeleId :$modeleId";
			$actif = $form["actif"]->getData();
			$entities = $em->getRepository('quadMainBundle:Argus')->findByFiltreArgus($annee,$modeleId,$actif);           
        }
        else{
        	$entities = $em->getRepository('quadMainBundle:Argus')->findAll();
        }
 
        return $this->render('quadMainBundle:Argus:index.html.twig', array(
            'entities' => $entities,
        	'form' => $form->createView()
        ));
    }
ma vue :
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
 
					<form action="{{ path('admin_argus') }}" method="post" {{ form_enctype(form) }}>
				    <table width="100%">
				    <tr>
				    <td>{{ form_label(form.modele) }}</td>
				    <td>{{ form_widget(form.modele) }}</td>
				    <td>{{ form_label(form.annee) }}</td>
				    <td>{{form_widget(form.annee) }}</td>
				    <td>{{ form_label(form.actif) }}</td>
				    <td>{{form_widget(form.actif) }}</td>
				    <td><button type="submit">Filtrer</button></td>
				    </tr>
				    </table>
            	    {{ form_rest(form) }}
				</form>
Avec ce code je n'ai pas de problème lorsque je souhaite rechercher sur actif ou année. Par contre lorsque je souhaite rechercher sur un modèle ça ne fonctionne pas, je récupère pas la valeur de mon select mais la valeur affiché.

Je ne vois pas ou est l'erreur, merci de votre aide.

Olivier