自定义标识丢失会话信息

时间:2015-04-29 10:48:08

标签: php session authentication yii yii2

出于某种原因,登录后,用户详细信息会丢失。

我创建了一个Customer类,使用此类实现了IdentityInterface和扩展ActiveRecord

当客户登录时,客户已经过适当的身份验证。此时我注意到(使用var_dump)Yii::$app->user已正确设置为相应的Customer实例,我也注意到Yii::$app->session已启用。这是在$model->login()函数之后;其中$model这里是事实LoginForm的实例。

public function login()
{
    if ($this->validate()) {
        return Yii::$app->user->login($this->getCustomer(), $this->rememberMe ? 3600 * 24 * 30 : 0);
    } else {
        return false;
    }
}

但是,在$this->goBack()重定向后,我注意到Yii::$app->user - 曾经是yii\web\User的一个实例,其{class = 1}}处的identityClass现在是{{1} }}。我还注意到此时的会话(重定向后立即)是app/models/Customer

即使客户经过适当的身份验证,这意味着null始终为null

如何通过重定向携带登录用户?

0 个答案:

没有答案