我是Yii的新手。我创建了一个用户可以更改密码的页面。
所以在我的changePassword视图中我有:
<div class="row">
<?php echo $form->labelEx($model,'oldpwd'); ?>
<?php echo $form->textField($model,'oldpwd'); ?>
<?php echo $form->error($model,'oldpwd'); ?>
</div>
<div class="row">
<?php echo $form->labelEx($model,'pwd'); ?>
<?php echo $form->textField($model,'pwd'); ?>
<?php echo $form->error($model,'pwd'); ?>
</div>
<div class="row">
<?php echo $form->labelEx($model,'pwd_repeat'); ?>
<?php echo $form->passwordField($model,'pwd_repeat'); ?>
<?php echo $form->error($model,'pwd_repeat'); ?>
</div>
现在很明显我收到一个错误,因为只有字段'pwd'在表中,因此在模型中。我是MVC框架的新手,可以在这里使用一些帮助。感谢
答案 0 :(得分:2)
在模型中将它们声明为模型的属性First ..
public $old_pwd;
public $pwd;
public $pwd_repeat;
当您询问这些属性的模型标签时......在模型中的attributeLabels函数中定义它们。
public function attributeLabels()
{
return array(
'old_pwd'=>'Old Passw....',
'.....same way for all those who are not already there..'
);
}
如果需要,在规则中声明它们是安全的......
答案 1 :(得分:0)
将以下行添加到模型中
public $old_pwd;
public $pwd_repeat;
我们指示Yii将此字段用作虚拟字段,而不是在数据库字段中搜索