Php 跳过电子邮件&x27;独特的';Yii模型的验证
我已经在我的一个Yii模型课程中编写了电子邮件规则:Php 跳过电子邮件&x27;独特的';Yii模型的验证,php,validation,email,yii,Php,Validation,Email,Yii,我已经在我的一个Yii模型课程中编写了电子邮件规则: array('first_name, last_name, email, password, cpassword, user_type', 'required'), array('email', 'email','message'=>"The email isn't correct"), array('email', 'unique','message'=>"Email already exists!"), 它适用于所有场景,如
array('first_name, last_name, email, password, cpassword, user_type', 'required'),
array('email', 'email','message'=>"The email isn't correct"),
array('email', 'unique','message'=>"Email already exists!"),
它适用于所有场景,如注册、登录和更新密码,但在忘记密码的功能中,unique
验证也在工作。我只想在忘记密码功能时跳过此验证规则,我只想检查电子邮件的语法和所需功能
那么,我们如何跳过对不同(忘记密码)功能的特殊唯一验证呢
试试这个。您可以使用“除外”选项并在操作中添加场景
array('first_name, last_name, email, password, cpassword, user_type', 'required'),
array('email', 'email','message'=>"The email isn't correct"),
array('email', 'unique','message'=>"Email already exists!", 'except' => 'passwordRestoration'),
然后,在行动中
...
$model = User::model()->findByPk($pk);
$model->scenario = 'passwordRestoration';
我想干什么就干什么。
...
$model = User::model()->findByPk($pk);
$model->scenario = 'passwordRestoration';