Bonjour !
Un petit casse tête pour commencer la journée !
Je pensais avoir fait le tour des surprises sur symfony mais voici quelque chose qui me laisse vraiment perplexe !
Mon cas: dans le backend d'un objet simple qui possède un champ de type text 'country'.
Je le déclare ainsi dans mon BackendDoctorForm:
Forcément et heureusement, dans le module filter, j'ai une jolie boite déroulante avec tous les pays.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 $this->widgetSchema['country'] = new sfWidgetFormI18nChoiceCountry(array( 'culture' => 'en', 'add_empty' => true ));
Cependant, cela ne prends pas bien le filtre en compte.
Le code généré est le suivant :
Après moultes recherches, pour que cela fonctione, il faut que name soit déclaré ainsi :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 <select name="doctor_filters[country]" id="doctor_filters_country"> <option value=""></option> <option value="AF">Afghanistan</option> <option value="AL">Albania</option> [...] </select>
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 <select name="doctor_filters[country][text]" id="doctor_filters_country"> <option value=""></option> <option value="AF">Afghanistan</option> <option value="AL">Albania</option> [...] </select>
A part corriger ça à la volée en javascript ou réécrire le partial à la main, je ne vois pas de bonne façon de corriger ceci.
Et vous ?
Merci
Partager