我是yii的新手,我花了这么多时间来解决这个非常简单的功能,这令人沮丧。有人可以帮助我,为什么它一直在说"密码必须完全重复。",即使我遵循教程。看起来confirm_password字段尚未分配给模型。
用户模型:
class User extends CActiveRecord
{
public $confirm_password;
...
public function rules()
{
...
array('confirm_password', 'safe'),
array('password', 'compare', 'compareAttribute'=>'confirm_password'),
}
站点控制器
public function actionVerify_token($token){
...
if(isset($_POST['User'])){
$model->attributes=$_POST['User'];
if($model->validate()){
$model->token = null;
if($model->save()){
Yii::app()->user->setFlash('success','Password Changed');
}
}
}
...
}
新密码表格:
echo $form->passwordField($model,'password',array('class' => 'form-control input-lg','placeholder' => 'New Password'));
echo $form->passwordField($model,'confirm_password',array('class' => 'form-control input-lg','placeholder' => 'Confirm Password'));
更新
我能够通过创建一个专门用于更改密码的单独表单模型来完成这项工作。很奇怪,但还可以。谢谢。