Cómo usar sfWidgetFormJQueryDate de sfFormExtraPlugin?
Publicado en Frameworks, Programación el 22 de July de 2009 por Manel Pérez MataTags: jQuery, Symfony
sfFormExtraPlugin es un excelente plugin que mantienen los desarrolladores de Symfony con un montón de características adicionales que te ayudarán a construir formularios más completos.
¿Qué podemos encontrar en este plugin?
Són varias las utilidades que nos ofrece, desde la creación de campos captcha para evitar el spam hasta campos de texto autocompletables en función de lo que vayamos escribiendo. Aquí os dejo una lista con sus posibilidades:
- ReCaptcha widget y validador
- Editor HTML WYSIWYG para campos de texto
- Selector de fechas tipo calendario
- Selectores de idioma
- Widget de listas dobles
- Widget de autocompletado en campos de texto
¿Cómo instalar y usar sfWidgetFormJQueryDate?
sfWidgetFormJQueryDate nos creará un selector de fechas con unas configuraciones mínimas para facilitar la tarea de rellenar los campos date en nuestros formularios. En la siguiente imágen, puedes ver el resultado de su correcta implementación:

A pesar de que este plugin está muy extendido, es muy poca la información que se puede encontrar sobre como instalarlo y usarlo correctamente. Espero que esta pequeña guía os sea de utilidad.
- Instalar el plugin:
symfony plugin:install sfFormExtraPlugin - Una vez instalado, también necesitaremos descargar las librerías jQuery UI de la web oficial.
- Ahora debemos configurar convenientemente nuestra aplicación para que use estas librerías javascript. Abre el zip descargado y mueve los archivos jquery-1.3.2.min.js y jquery-ui-1.7.2.custom.min.js a tu carpeta /path/to/project/web/js/Edita el archivo /path/to/project/apps/[app]/config/view.yml y añade esta información:
javascripts: [jquery-1.3.2.min.js, jquery-ui-1.7.2.custom.min.js] - El siguiente paso será configurar los CSS de la librería jQuery UI. Añadimos la siguiente información al archivo view.yml recién editado:
stylesheets: [main.css, ui-lightness/jquery-ui-1.7.2.custom.css] - Configurar nuestro formulario para que utilice el widget:
class myForm extends sfForm { public function configure() { $this->setWidgets(array( 'from_date' => new sfWidgetFormJQueryDate(array( 'image'=> '/images/icons/calendar_view_month.gif', 'format' => '%day%/%month%/%year%') ), //...other widgets )); $this->widgetSchema->setLabels(array( 'from_date' => 'From Date', //...other labels )); } } - Por último, lo prepararemos para usar en el action:
public function executeSearch(sfWebRequest $request){ $this->form = new myForm(); return sfView::SUCCESS; }y renderizaremos en la vista:
.... echo $form['from_date']->renderLabel().":".$form['from_date']; ....
Vía | Symfonynerds.com















Leave a Reply