您好我有一个Zend表格,其中包含2个(两个)Zend_Validate_Db_RecordExists,以此类推:
$ditta_esiste = new Zend_Validate_Db_RecordExists(
array(
'table' => 'ditta',
'field' => 'id'
)
);
$this->getElement('ditta')->setAttrib('id', 'nome_ditta')->setRequired(true);
$this->getElement('ditta_id')->addValidator(new Zend_Validate_NotEmpty(), false)->addValidator($ditta_esiste, false);
$marca_esiste = new Zend_Validate_Db_RecordExists(// ZEND IMBECILLE NON FUNZIONA QUESTO CONTROLLO
'marca', 'id'
);
$this->getElement('marca_id')->addValidator($marca_esiste, false);
第二个验证器永远不会触发,我可以把垃圾放在它的构造函数中并且它不关心
答案 0 :(得分:2)
Zend框架不允许在同一个元素上使用同一个类的两个验证器... See This Bug Report (Read Comments Too)
解决方法是创建自己的验证程序类,扩展Zend_Validate_Db_RecordExists,然后将其用作第二个验证程序。