setPluginLoader($loader, $type):
$loader es el propio objeto cargador, mientras
$type es uno de los tipos arriba mencionados. Esto
establece el cargador de plugin para el tipo dado en el objeto
cargador recién especificado.
getPluginLoader($type): obtiene el cargador de
plugin asociado con $type.
addPrefixPath($prefix, $path, $type = null): agrega
una asociación prefijo/ruta para el cargador especificado por
$type. Si $type es null, se intentará
agregar la ruta a todos los cargadores, añadiendo el prefijo a
cada "_Validate", "_Filter" y "_Decorator"; y agregandole
"Validate/", "Filter/" y "Decorator/" a la ruta. Si tiene todas
sus clases extras para elementos de formulario dentro de
una jerarquía común, este método es conveniente para establecer
el prefijo para todas ellas.
addPrefixPaths(array $spec): le permite añadir
varias rutas de una sola vez a uno o más cargadores de plugin.
Se espera cada elemento de la matriz sea un array con claves
'path', 'prefix', y 'type'.
Zend_Filter, y
getValue():
addPrefixPath(). Por ejemplo, si tiene filtros
con el prefijo 'My_Filter', puede indicárselo a
getUnfilteredValue():
addFilter($nameOfFilter, array $options = null)
addFilters(array $filters)
setFilters(array $filters) (sobreescribe todos los
filtros)
getFilter($name) (recupera un objeto filtro por su
nombre)
getFilters() (recupera todos los filtros)
removeFilter($name) (elimina un filtro por su
nombre)
clearFilters() (elimina todos los filtros)
Zend_Validate_*.
addPrefixPath(). Por ejemplo, si tiene validadores
con el prefijo 'My_Validator', puede indicárselo a
true como segundo parámetro:
addValidator() como un
array:
$min y $max:
$options de
addValidators(). Su uso básico es pasar una matriz de
arrays, donde cada array contenga de 1 a 3 valores,
correspondientes al constructor de addValidator():
isValid():
$context.
$context cuando valida un formulario,
y breakChainOnFailure falle su validación. Asegúrese de
especificar sus validadores en un orden razonable.
setRequired(true). Por defecto, esta
bandera es false, lo que significa que pasará su cadena de
validadores si ningún valor es pasado a isValid().
Puede modificar este comportamiento en un número de maneras:
isValid(),
los validadores serán saltados. Puede intercalar esta
bandera usando el método de acceso
setAllowEmpty($flag); cuando la bandera es
false, si un valor es pasado, los validadores seguirán
ejecutándose.
isValid() añadirá uno
en la cima de la pila, con la bandera
breakChainOnFailure establecido. Esto hace que
la bandera requerida tenga un significado semántico: si
ningún valor es pasado, inmediatamente invalidamos el envío
y se le notifica al usuario, e impedimos que otros
validadores se ejecuten en lo que ya sabemos son datos
inválidos.
setAutoInsertNotEmptyValidator($flag); esto
prevendrá a isValid() de colocar un validador
'NotEmpty' en la cadena de validaciones.
setRequired($flag) y
isRequired() permiten establecer y recuperar el
estado de la bandera 'required'. Cuando se le asigna un
booleano true, esta bandera requiere que el
elemento esté presente en la información procesada por
setAllowEmpty($flag) y
getAllowEmpty() permiten modificar el
comportamiento de elementos opcionales (p.e., elementos
donde la bandera required es false). Cuando la bandera
'allow empty' es true, valores vacíos no pasarán la cadena
de validadores.
setAutoInsertNotEmptyValidator($flag) permite
especificar si realmente un validador 'NotEmpty' será
añadido el inicio de la cadena de validaciones cuando un
elemento es requerido. Por defecto, esta bandera es true.
addValidator($nameOrValidator, $breakChainOnFailure = false, array $options = null)
addValidators(array $validators)
setValidators(array $validators) (sobreescribe todos los validadores)
getValidator($name) (recupera un objeto validador por nombre)
getValidators() (recupera todos los validadores)
removeValidator($name) (elimina un validador por nombre)
clearValidators() (elimina todos los validadores)
addErrorMessage($message): añade un mensaje de
error para mostrarlos en forma de errores de validación. Puede
llamarlo más de una vez, y los nuevos mensajes nuevos son
añadidos a la pila.
addErrorMessages(array $messages): añade
múltiples mensajes de error para mostrarlos en forma de errores de
validación.
setErrorMessages(array $messages): añade
múltiples mensajes de error para mostrarlos en forma de errores de
validación, sobreescribiendo todos los mensajes de error
previamente establecidos.
getErrorMessages(): recupera la lista de
mensajes de error personalizados que fueron definidos.
clearErrorMessages(): remueve todos los
mensajes de error personalizados que hayan sido definidos.
markAsError(): marca al elemento como que falló
la validación.
hasErrors(): determina si el elemento ha
fallado la validación o ha sido marcado como inválido.
addError($message): añade un mensaje a la pila
de mensaje de error personalizados y marca al elemento como
inválido.
addErrors(array $messages): añade varios
mensajes a la pila de mensajes de error personalizados y
marca al elemento como inválido.
setErrors(array $messages): sobreescribe el
mensaje de error personalizado en la pila con los mensajes
previstos y marca al elemento como inválido.
Zend_View_Helper_FormErrors. Si no está
presente, no se añade nada.
Zend_View_Helper_FormLabel, y
envolviéndola en una etiqueta <dt>. Si ninguna etiqueta es
provista, solo la etiqueta de la definición es generada.
Zend_Config.
This is some descriptive text regarding the element.
addDecorator(), pase una matriz con un
solo elemento, con el alias apuntando al nombre o objeto
decorador:
addDecorators() y
setDecorators(), necesitará pasar la opción
'decorator' en la matriz representando el decorador:
addDecorator($nameOrDecorator, array $options = null)
addDecorators(array $decorators)
setDecorators(array $decorators) (sobreescribe
todos los decoradores)
getDecorator($name) (recupera un objeto decorador
por su nombre)
getDecorators() (recupera todos los decoradores)
removeDecorator($name) (elimina un decorador por su
nombre)
clearDecorators() (elimina todos los decoradores)
__call()
interceptará métodos que comiencen con el texto 'render' y utilizará
el resto del nombre del método para buscar un decorador; si se
encuentra, entonces será generado render() del
decorador. Como ejemplo:
setName() y getName().
setLabel() y getLabel().
setOrder() y getOrder().
setValue() y
getValue().
setDescription() y
getDescription().
setRequired() y getRequired(). Esta
bandera es false por defecto.
setAllowEmpty() y getAllowEmpty().
Esta bandera es true por defecto.
setAutoInsertNotEmptyValidator($flag) y determine
el valor con autoInsertNotEmptyValidator().
setOptions(array $options)setConfig(Zend_Config $config)setTranslator(Zend_Translate_Adapter $translator = null)getTranslator()setDisableTranslator($flag)translatorIsDisabled()setName($name)getName()setValue($value)getValue()getUnfilteredValue()setLabel($label)getLabel()setDescription($description)getDescription()setOrder($order)getOrder()setRequired($flag)getRequired()setAllowEmpty($flag)getAllowEmpty()setAutoInsertNotEmptyValidator($flag)autoInsertNotEmptyValidator()setIgnore($flag)getIgnore()getType()setAttrib($name, $value)setAttribs(array $attribs)getAttrib($name)getAttribs()setPluginLoader(Zend_Loader_PluginLoader_Interface $loader, $type)getPluginLoader($type)addPrefixPath($prefix, $path, $type = null)addPrefixPaths(array $spec)addValidator($validator, $breakChainOnFailure = false, $options = array())addValidators(array $validators)setValidators(array $validators)getValidator($name)getValidators()removeValidator($name)clearValidators()isValid($value, $context = null)getErrors()getMessages()addFilter($filter, $options = array())addFilters(array $filters)setFilters(array $filters)getFilter($name)getFilters()removeFilter($name)clearFilters()setView(Zend_View_Interface $view = null)getView()addDecorator($decorator, $options = null)addDecorators(array $decorators)setDecorators(array $decorators)getDecorator($name)getDecorators()removeDecorator($name)clearDecorators()render(Zend_View_Interface $view = null)Zend_Config
conteniendo opciones, y esto puede configurarse usando
setOptions() o setConfig(). Hablando de
manera general, las claves son nombradas de la siguiente manera:
prefixPath será pasado a
addPrefixPaths()
setAttrib (aunque
setAttribs setConfigsetOptionssetPluginLoadersetTranslatorsetViewinit(), el cual puede usarse para añadir una lógica de
inicialización personalizada a su elemento, y
loadDefaultDecorators(), el cual puede usarse para
establecer una lista de decoradores usados por su elemento de manera
predeterminada.
StringTrim, validados con una expresión regular, y que
quiere usar un decorador personalizado que ha creado para
mostrarlos, 'My_Decorator_TextItem'; adicionalmente, tiene un número
de atributos estándars, incluyendo 'size', 'maxLength', y 'class'
que quisiera especificar. Puede definir un elemento tal como sigue:
My_Element_Text,
y mostrará el comportamiento que ha especificado.
loadDefaultDecorators(). Este método carga
condicionalmente un grupo de decoradores predefinidos para su
elemento; puede querer sustituir su propio decorador en su clase
extendida: