我的Db_NoRecordExists
消息被addErrorMessage
覆盖
代码:
$emailaddress = new Zend_Form_Element_Text('EmailAddress');
$emailaddress->setRequired(true)
->setAttrib('size', '30')
->addFilters(array('StringTrim', 'StripTags'))
->addValidator('EmailAddress',TRUE)
->setDecorators($decorators)
->addErrorMessage('Please Enter Va`enter code here`lid Values.')
->setAttrib('MaxLength',100)
->setAttrib('onkeyup','setUserName()')
->setAttrib('onkeypress','setUserName()')
->setAttrib('onfocus','setUserName()')
->setAttrib('onchange','setUserName()')
->setAttrib('Maxlength', '100');
$emailaddress ->class="textbox";
和
public function isValid($data)
{
$this->getElement('EmailAddress')
->addValidator('Db_NoRecordExists', false, array(
'table'=>'puntermaster',
'field' => 'EmailAddress',
'messages' => array(Zend_Validate_Db_Abstract::ERROR_RECORD_FOUND => 'A user with email address already exists'),
'exclude' => array( 'field' => 'Sno', 'value' => $data['Sno'])
), TRUE);
return parent::isValid($data);
}
答案 0 :(得分:1)
如果使用addErrorMessage()
或addErrorMessages()
向表单元素添加自定义错误消息,并且其中一个验证程序未通过验证,则将使用自定义错误消息而不是特定的验证程序错误消息。
如果要覆盖表单元素的所有验证程序错误消息,请仅使用addErrorMessage
。
addErrorMessage
的另一个用途是在您验证表单元素后调用它,并且您想添加稍后使用getErrorMessages()
检索的自定义消息。