为什么在 frontend\controllers\siteController.php中的actionLogin方法中,\Yii::$app->user->isGuest返回为false,而在frontend\views\layouts\main.php中 \Yii::$app->user->isGuest返回为true?
1 回答
四季花海
TA贡献1811条经验 获得超5个赞
既然你说view中\Yii::$app->user->isGuest返回为true,那么说明你的程序能够正常登陆了, 其实actionLogin这个方法是进了两次,第一次没有登陆的时候是返回false,所以才会转到loginForm,第二次返回true,就回到了home, 并且在view中也返回了true
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | public function actionLogin() { if (!\Yii::$app->user->isGuest) { return $this->goHome(); } $model = new LoginForm(); if ($model->load(Yii::$app->request->post()) && $model->login()) { return $this->goBack(); } else { return $this->render('login', [ 'model' => $model, ]); } } |
- 1 回答
- 0 关注
- 491 浏览
添加回答
举报
0/150
提交
取消