Los formularios de Symfony 1.4

12.3. Widgets de tipo input

12.3.1. sfWidgetFormInput

La etiqueta <input> es seguramente la etiqueta más sencilla que vas a utilizar en los formularios y se representa mediante la clase sfWidgetFormInput.

Opción Descripción
type El valor del atributo type de HTML (por defecto vale text)
$w = new sfWidgetFormInput();
echo $w->render('nombre');

# <input type="text" name="nombre" id="nombre" />

12.3.2. sfWidgetFormInputCheckbox

sfWidgetFormInputCheckbox es un widget de tipo <input> cuyo atributo type es checkbox.

$w = new sfWidgetFormInputCheckbox();
echo $w->render('nombre');

# <input type="checkbox" name="nombre" id="nombre" />

12.3.3. sfWidgetFormInputHidden

sfWidgetFormInputHidden es un widget de tipo <input> cuyo atributo type vale hidden. La opción is_hidden también se establece al valor true.

$w = new sfWidgetFormInputHidden();
echo $w->render('nombre');

# <input type="hidden" name="nombre" id="nombre" />

12.3.4. sfWidgetFormInputPassword

sfWidgetFormInputPassword es un widget de tipo <input> cuyo atributo type es password.

$w = new sfWidgetFormInputPassword();
echo $w->render('nombre');

# <input type="password" name="nombre" id="nombre" />

12.3.5. sfWidgetFormInputFile

The sfWidgetFormInputFile es un widget de tipo <input> cuyo atributo type vale file. El valor de la opción needs_multipart se establece automáticamente a true.

$w = new sfWidgetFormInputFile();
echo $w->render('nombre');

# <input type="file" name="nombre" id="nombre" />

12.3.6. sfWidgetFormInputFileEditable

sfWidgetFormInputFileEditable es un tipo de widget relacionado con los archivos, que extiende el widget sfWidgetFormInputFile para añadir la posibilidad de mostrar o eliminar un archivo subido previamente.

Opción Descripción
file_src La ruta web de la imagen actual (esta opción es obligatoria)
edit_mode Valor booleano que vale true si se ha habilitado la posibilidad de editar el archivo y false en cualquier otro caso
is_image Indica si el archivo es una imagen que se puede visualizar
with_delete Indica si se añade un checkbox que permita borrar el archivo
delete_label El título que se muestra para la opción de borrar el archivo
template Código HTML de la plantilla utilizada para mostrar este widget. Las variables disponibles en esta plantilla son las siguientes:\ input (el widget para subir una imagen)\ delete (el checkbox para borrar el archivo)\ delete_label (el título de la opción de borrado)\ file (la etiqueta del archivo)

Nota En el modo edit, este widget muestra otro widget cuyo nombre se forma con el mismo nombre que el widget para subir el archivo y el sufijo _delete. Por lo tanto, cuando crees un formulario, no olvides añadir también un validador para este campo adicional.

12.3.7. sfWidgetFormTextarea

sfWidgetFormTextarea es un widget simple de tipo <textarea>. Los valores de los atributos rows y cols se establecen automáticamente porque son obligatorios.

$w = new sfWidgetFormTextarea();
echo $w->render('nombre');

# <textarea rows="4" cols="30" name="nombre" id="nombre"></textarea>

12.3.8. sfWidgetFormTextareaTinyMCE

Al contrario que el widget del <textarea> simple, sfWidgetFormTextareaTinyMCE muestra un editor avanzado de tipo WYSIWYG:

$w = new sfWidgetFormTextareaTinyMCE(
  array(),
  array('class' => 'foo')
);

Nota Este widget es parte del plugin sfFormExtraPlugin de Symfony.

Como los archivos JavaScript del editor TinyMCE no se incluyen con el plugin, debes instalarlos e incluirlos manualmente.

Opción Descripción
theme El tema utilizado por Tiny MCE (por defecto se utiliza el tema advanced)
width La anchura del editor
height La altura del editor
config Un array con la configuración específica de JavaScript