Я настраиваю страницу регистрации пользователя и проверяю поле имени пользователя, которое проверяет, во-первых, не существует ли пользователь, во-вторых, не является ли имя пользователя зарезервированным. Моя проблема заключается в том, что когда я прикрепляю два валидатора к элементу формы, он игнорирует вторую проверку. Вторая проверка будет работать только в том случае, если первая проверка будет удалена. Это ошибка? Если да, то как я могу это исправить?
Ниже приведены валидаторы:
$validator = new Zend_Validate_Db_NoRecordExists(
array(
'table' => 'users',
'field' => 'username'
)
);
$validator->setMessage('Username %value% already exists', Zend_Validate_Db_Abstract::ERROR_RECORD_FOUND);
$reserved_validator = new Zend_Validate_Db_NoRecordExists(
array(
'table' => 'reserved_users',
'field' => 'name'
)
);
$reserved_validator->setMessage('Username %value% is not available', Zend_Validate_Db_Abstract::ERROR_RECORD_FOUND);
Затем на элементе у меня есть:
->addValidator($validator)
->addValidator($reserved_validator)