为了账号安全,请及时绑定邮箱和手机立即绑定

PHP Yii2.0 advanced登录问题

PHP Yii2.0 advanced登录问题

PHP
ABOUTYOU 2018-11-26 16:00:35
为什么在 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,

            ]);

        }

    }

 


查看完整回答
反对 回复 2018-12-19
  • 1 回答
  • 0 关注
  • 491 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信