0
不知何故,我的登錄頁面remember me
複選框不記得用戶的任何信息。當我加載頁面時,在我輸入email
和password
後,將自動標記Remember me
複選框,下次它不記得任何信息。有人能告訴我爲什麼嗎?感謝您的任何幫助。記住我checbox在Yii2中不起作用
型號功能:
class LoginForm extends Model
{
public $email;
public $password;
public $rememberMe = true;
/**
* Logs in a user using the provided username and password.
* @return boolean whether the user is logged in successfully
*/
public function login()
{
if ($this->validate()) {
return Yii::$app->user->login($this->getUser(), $this->rememberMe ? 3600*24*30 : 0);
} else {
return false;
}
}
View
文件:
<?= $form->field($model, 'rememberMe', [
'template' => "<div class=\"col-lg-offset-1 col-lg-3\">{input}</div>\n<div class=\"col-lg-8\">{error}</div>",
])->checkbox() ?>
控制器的actionLogin()
:
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,
]);
}
}
好的,但代碼仍然不工作,我'我不知道什麼是錯的 – devorye
代碼似乎沒問題,你必須看到通過表單獲得的rememberMe的價值。 – Ravenous