Bonsoir,

J'aimerais savoir déjà si c'est possible de passer des paramètre dans un formulaire par exemple :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
$form = $this->createForm(new Entity, $entity, array('id' => $entity->getId()));
et de quelle manière on la récupère dans le repository ?

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
class ConfBriquesType extends AbstractType
{
    public function buildForm(FormBuilderInterface $builder, array $options)
    {		
        $builder
            ->add('nom')
			->add(
				'etat',
				'entity',
				array(
					'class' => 'MeteoApplisAdminBundle:ConfIndicateurs',
					'property' =>'etat',
					'empty_value' => ''
				)
			)
			->add(
				'applications',
				'entity',
				array(
					'class' => 'MeteoApplisAdminBundle:ConfApplications',
					'property' =>'nom',
					'multiple' => 'true',
					'query_builder' => function(\MeteoApplis\AdminBundle\Entity\ConfApplicationsRepository $er) use ($id){
						return $er->createQueryBuilder('a')->where('a.brique is null')->orWhere('a.id = :id')->setParameter('id', $id)->orderBy('a.nom', 'ASC');
					},
				)
			)
        ;
    }
 
	public function setDefaultOptions(OptionsResolverInterface $resolver)
    {
        $resolver->setDefaults(array(
            'data_class' => 'MeteoApplis\AdminBundle\Entity\ConfBriques'
        ));
    }
 
    public function getName()
    {
        return 'meteoapplis_adminbundle_confbriquestype';
    }
}

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
		$repository = $this->getDoctrine()->getManager()->getRepository('MeteoApplisAdminBundle:ConfBriques');
 
		$brique = $repository->find($id);
 
		$form = $this->createForm(new ConfBriquesType, $brique, array('id' => $brique->getId()));
Merci.