У меня есть следующие calss для проверки моих элементов ввода.
class Validator_FormValidator {
public function genValid($value){
$chainValid = new Zend_Validate();
$strLenV = new Zend_Validate_StringLength(array('min' => 4, 'max' => 10));
$strLenV->setMessage("You have entered a Invalid value","stringLengthInvalid");
$chainValid->addValidator($strLenV);
return $result;
}
}
и затем в контроллере индекса
public function indexAction()
{
$this->view->form = new Form_LoginForm();
$this->view->registrationForm = new Form_RegistrationForm();
if($this->getRequest()->isPost()) {
$validatorObj = new Validator_FormValidator();
$valid = new Zend_Validate_Callback(array($validatorObj,'genValid'));
$username = $this->_getParam('username');
if ($valid->isValid($username)) { echo 'success'; }
else {
echo 'failure';
foreach ($valid->getMessages() as $message) {
echo "$message\n";
}
}
}
}
Теперь я пытаюсь добавить настраиваемые сообщения об ошибках в мой класс Validator_FormValidator, которые не отображаются в состоянии отказа моего контроллера.Может кто-нибудь из вас, пожалуйста, руководство, как это сделать?Это то, что я пытаюсь сделать (создать отдельный класс валидатора и поместить в него все функции валидации) - это хорошая практика?