Bonjour à tous,

Je cherche depuis des heures à afficher dans un select à l'édition de l'entité "Contact" le nom de la ville qui a été enregistré dans la bdd pour ce contact actif.
Le select m'affiche un 0 au lieu du nom de la ville, j'ai essayé en mettant soit choice_label=>$ville[1], ou data=>$ville[1] pour qu'il affiche la valeur du tableau $ville[] et non pas sa clé, rien n'y fait, il me parle de clé undefined alors que le tableau retourne pourtant [0=>'Paris'] par exemple...

Que fais-je mal ?

Merci d'avance

            ->addEventListener(FormEvents::PRE_SET_DATA, function (FormEvent $event) {
                $form = $event->getForm();
                $contact = $event->getData('numcontact');
                if (!empty($contact)) {
                    $ville[] = $contact->getVille();

                    $form->add(
                        'ville',
                        ChoiceType::class,
                        [
                            'choices' => $ville,
                            'attr' => [
                                'class' => 'select-ville',
                            ]

                        ]
                    );
                }
            })

            //Select avec nom des villes suivant code postal sélectionné
            ->addEventListener(FormEvents::PRE_SUBMIT, function (FormEvent $event) {
                $form = $event->getForm();
                $ville = $event->getData()['ville'] ?? null;
                if ($ville) {
                    $form->add('ville', ChoiceType::class, ['choices' => [$ville => $ville], 'attr' => ['class' => 'select-ville']]);
                }
            })

Aucune réponse