Bonjour,
J'ai une question débutante sur laquelle je bloque. En fait, j'ai un formulaire tout simple qui appelle une collection :
Et voici la ModuleControleType() :
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 class ModuleType extends AbstractType { public function buildForm(FormBuilderInterface $builder, array $options) { $builder ->add('controles', 'collection', array( 'label' => false, 'type' => new ModuleControleType(), 'allow_add' => true, 'allow_delete' => true, 'by_reference' => false )) ; } ...
Jusque la, pas de soucis, c'est un code vraiment de base sur Symfony et tout fonctionne bien : il va chercher tous mes points. Cependant, je souhaiterais personnaliser la requête (le query_builder donc) qui va chercher mes "points" dans ModuleControle() afin de lui rajouter un WHERE.
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 class ModuleControleType extends AbstractType { use Description; /** * @param FormBuilderInterface $builder * @param array $options */ public function buildForm(FormBuilderInterface $builder, array $options) { $this->description($builder, 2); } /** * @param OptionsResolverInterface $resolver */ public function setDefaultOptions(OptionsResolverInterface $resolver) { $resolver->setDefaults(array( 'data_class' => 'AdministrationBundle\Entity\ModuleControle', 'intention' => $this->getName() . '_token' )); } /** * @return string */ public function getName() { return 'administration_module_controle_form'; } }
J'ai essayé de rajouter "query_builder" à setDefaultOptions(), comme c'est le cas pour les champs de type "entity" mais ça ne fonctionne pas.
Merci d'avance![]()
Partager