Zend Validate, отображать одно сообщение для каждого валидатора - PullRequest
2 голосов
/ 07 июля 2010

Я проверяю адрес электронной почты, используя zend_validate_email.Например, для адреса электронной почты aa @ aa выдается несколько сообщений об ошибках, включая очень техническое описание того, что несоответствие DNS (: S).

Я пытаюсь сделать так, чтобы оно отображало только 1 сообщение, которое я хочу (например,: "Пожалуйста, введите правильный адрес электронной почты").

Есть ли способ сделать это элегантно, кроме создания подкласса и переопределения метода isValid, очистки массива сообщений об ошибках?

Спасибо!

1 Ответ

1 голос
/ 06 декабря 2010
$validator = new Zend_Validate_EmailAddress();
// sets the message for all error types
$validator->setMessage('Please enter a valid email');
// sets the message for the INVALID_SEGMENT error
$validator->setMessage('Something with the part after the @ is wrong', Zend_Validate_EmailAddress::INVALID_SEGMENT);

Полный список ошибок и шаблонов сообщений см. В классе Zend_Validate_EmailAddress

...