我的 Zend 表单中有所需的元素:
$name = new Zend_Form_Element_Text('name');
$name->setLabel('Name')
->setValue(isset($plan)?$plan['name']:'')
->setRequired()
->setAttribs(array('class' => 'required', 'maxlength' => 50))
->addValidators(array(new Zend_Validate_StringLength(array('min' => 1, 'max' => 50)),
new Zend_Validate_Db_NoRecordExists(array('table' => 'plan', 'field' => 'name')))
->addFilters(array(new Zend_Filter_StringTrim, new Zend_Filter_StripTags));
所有验证器都能完美运行。但这是一个问题。在控制器中,我使用getValidValues检查表单(我需要它)。如果 DB 中的 Record 存在,则元素无效,Zend 清除该元素。我接受了“需要价值”的信息。如何获取有关数据库中现有行的消息?
对不起我的英语不好。先感谢您。