2009-12-22 112 views
0

我使用验证模型这样CakePHP的验证

'email' => array( 
      //'UniqueMail'=>array('rule' => array('checkEmailUnique', 'email'),'message' => 'mail is used'), 
      'email'=>array('rule' => 'email','message' => 'mail not valid'), 
      'notEmpty'=>array('rule' => 'notEmpty','message' => '*'), 
     ) 

,这验证了现场电子邮件 但在一些其他形式。我不希望检查独特的邮件验证。 我该如何解决这个问题?

问候

回答

0

待办事项添加规则到您的$验证阵列。

创建一个beforeValidate()callback in your model

在为一个标志的形式数据的存在(像$data[$this->alias]['checkMail']beforeValidate()回调检查。如果设置了标志,然后添加电子邮件验证规则给你$this->validates阵列,这将阻止您验证针对规则除非你明确告诉模型这样做。

0

试试这个代码

'email' => array(
      'mail' => array(
       'rule' => array('email', true), 
       'required' => false, 
       'message' => 'Not correct e-mail!'), 
      'unique' => array(
       'rule' => 'isUnique', 
       'message' => 'E-mail was registered!')),