And*_*rew 4 ajax jquery zend-framework zend-form
我有一个用户可以创建帐户的表单.用户名列在数据库中是唯一的.如果用户尝试创建具有重复用户名的帐户,则会引发异常.这最终看起来很难看.
我正在考虑在插入数据库之前进行某种检查(可能使用ajax)以查看是否已经使用了所需的用户名.如果事实证明已经使用了用户名,我想在表单上设置一个错误状态的用户名字段,并指定要显示的错误消息.
我怎样才能做到这一点?
更新: Zend_Validator_Db_NoRecordExists适用于此类事情.这是我最终得到的:
// inside my create account form
$this->addElement('text', 'username', array(
'label' => 'Username:',
'required' => true,
'filters' => array('StringTrim'),
'validators' => array(
array('StringLength', false, array(2, 50)),
array('Db_NoRecordExists', false, array(
'table' => 'users',
'field' => 'username'
))
)
));
Run Code Online (Sandbox Code Playgroud)
将Db_NoRecordExists验证器添加到表单元素.
http://framework.zend.com/manual/en/zend.validate.set.html#zend.validate.Db
| 归档时间: |
|
| 查看次数: |
1103 次 |
| 最近记录: |