php - tutorial - Validadores Zend y mensajes de error: addValidator y addErrorMessage
zend framework doc (4)
Si tengo un elemento de formulario que tiene múltiples validadores adjuntos (3 en este ejemplo), cómo addErrorMessage
para crear mensajes de error personalizados cuando falla cada validador único. ¿Hay alguna manera de agregar un mensaje personalizado para cada validador?
$element = new Zend_Form_Element_Text()...
$element->....
->addValidator(...)
->addValidator(...)
->addValidator(...)
->addErrorMessage()
Por lo general, se realiza por mensaje de error del validador, no por validador ...
$element->setErrorMessages(array(Zend_Validate_...::CONSTANT => ''New Message''));
Pero a menudo prefiero anular todos los errores de un elemento a un solo
$element->setErrorMessages(array(''Single Error''));
o, si lo necesito por validador, esto funciona ...
$validator->setMessages(''string error'')
debe anular todos los errores de un validador en un solo mensaje. No pude encontrar esto documentado en ninguna parte, pero funciona para mí. Debido a esto, puede que no funcione para todas las versiones?
Para mí, el manejo de mensajes de error es un poco complicado a menos que desee anular todos los mensajes de error posibles, pero espero que una de estas soluciones funcione para usted.
Aclamaciones
Agregue su mensaje junto con el validador de la siguiente manera. Ejemplo:
->addValidator(''StringLength'', false, array(0,255,''messages''=>''Cannot be more than 255 chars''))
->addValidator(''NotEmpty'', true, array(''messages''=>''Cannot be empty''))
Agrega tu mensaje como este
-> addValidator (''Alpha'', true, array (''messages'' => array (''notAlpha'' => "Introduzca el carácter alfabético solo en Nombre del producto.
")));
Agregue un mensaje de validador de acuerdo con su cadena de error
addErrorMessage (''Su mensaje personalizado''); También es la forma más fácil de imprimir el mensaje personalizado.
AddErrorMessage se define dentro de libraray / zend / Form / Elements.php
¡¡Espero eso ayude!!