Formulaire et addEventListener

Par Guihom, il y a 7 ans


Bonjour,
je poursuis mon apprentissage de Symfony et j'ai une nouvelle question.
J'ai une table appellée "Category" avec une colonne "parent_id". L'idée etant de repertorier toutes les catégories de mon site.
exemple

id | nom | parent_id 1 | categorie 1 | null 2 | categorie 2 | null 3 | sous-categorie 1 | 1

J'ai créé un formulaire pour créer ces catégories. Jusqu'ici, tout va bien. Le problème est que lorsque l'on sélectionne une catégorie, j'aimerais qu'une seconde liste déroulante apparaisse avec ses sous catégories.

$builder ->add('name', TextType::class, array('label' => 'Nom de la catégorie : ')) ->add('parent', EntityType::class, array( // looks for choices from this entity 'class' => Category::class, 'required' => false, 'query_builder' => function (EntityRepository $er) { return $er->createQueryBuilder('u') ->where('u.parent IS NULL') ->orderBy('u.name', 'ASC'); }, 'label_format' => 'Catégorie parent', 'choice_label' => 'name', 'placeholder' => 'Aucune', 'choice_value' => 'id', 'empty_data' => null, 'mapped' => false, )) ->add('title', TextType::class, array('label' => 'Title SEO : ')) ->add('metadescription', TextareaType::class, array( 'label' => 'Description SEO : ', 'attr' => array('class' => 'tinymce'), )) ->add('submit', SubmitType::class, ['label'=>'Envoyer', 'attr'=>['class'=>'btn-primary btn-block']]) ;

J'essaie de comprendre la doc: https://symfony.com/doc/current/form/dynamic_form_modification.html#form-events-submitted-data
mais clairement je bloque ! je ne comprend tout simplement pas comment cela fonctionne. Est-il possible de m'éclairer un peu et me guider dans la bonne direction svp ?

Merci

1 réponse

Guihom, il y a 7 ans

Problème résolu. J'ai utilisé de l'Ajax "classique".