DatePicker Un majeur problème de Symfony avec les formulaires c’est qu’il est assez difficile de mettre en place un jQuery datepicker pour choisir une date.

En effet, Symfony offre un helper pour mettre en place un datepicker mais l’intégration de ce dernier avec un formulaire n’est pas évidente.

Pour palier ce problème, il existe un plugin qui facilite cette intégration. Il s’agit de sfFormExtraPlugin que l’on peut télécharger à cette adresse : http://www.symfony-project.org/plugins/sfFormExtraPlugin.

sfFormExtraPlugin propose des widgets additionnels pour sfForms dont notamment un Widget sfWidgetFormJQueryDate qui permet de créer un champ « Date » que l’on peut saisir via le DatePicker de jQuery.

Ajout du Widget sur le formulaire :

Après l’installation du plugin SfFormExtraPlugin, on instancie un widgetFormJQueryDate comme dans l’exemple ci-dessous :

sfWidgetFormJQueryDate

On peut y passer 3 options :

- config : correspond à une instruction Javascript pour paramétrer directement le datepicker de jQuery
- culture : permet de choisir la langue du calendrier (anglais par défaut)
- format : format de sortie du calendrier, dans l’exemple j’ai mis la convention française jour/mois/année.

Coté template :

Il suffit tout simplement d’afficher le contenu du formulaire, en ajoutant bien évidemment le jQuery Framework avec la page, dans mon cas je l’ai inclus à l’aide d’un helper.

Template