【发布时间】:2016-01-14 07:28:12
【问题描述】:
我需要知道这一点,因为我无法通过调用函数 setStatus() 来保存我的用户模型,而我正试图从扩展自 yii\base\component 的类中调用该函数。
public function setStatus()
{
if (!\Yii::$app->user->isGuest) {
$this->status = 1;
$this->save();
}
else {
$this->status = 0;
$this->save();
}
}
这里是组件类
Class StatusComponent extends Component
{
public function init(){
$user = New User;
$user_id = Yii::$app->user->identity->username;
$user->setStatus();
echo $user->getStatus();
parent::init();
}
}
Here 是 Yii 论坛上建议的解决方法,它说这可能是由于某些事件返回 'false'.. 如果是这种情况,我怎么知道?
【问题讨论】:
-
显示用户模型的验证规则。
-
猜得好!实际上我只是通过使用 $model->getErrors() 方法弄清楚了,它说“状态无效”。在规则中为状态字段定义了一个“范围”。如果您发布答案,请等待接受。如果您认为这个问题会对社区有所帮助,请不要忘记 upVote()。 :) 干杯!