是否必须使用" remember_token"领域?

时间:2014-07-25 11:16:59

标签: php laravel

我正在开发laravel 4.注销代码是 -

Auth::logout();
return Redirect::to('users/signin')
    ->with('message', 'You are now logged out');

在退出时显示 -

 Column not found: 1054 Unknown column 'remember_token' in 'field list'     (SQL: update `users` set `updated_at` = 2014-07-25 11:09:49, `remember_token` = some code where `id` = 1)

我没有使用任何记忆令牌,因为没有“记住我”的概念。我为此做了什么?我应该将remember_token添加到db?

1 个答案:

答案 0 :(得分:1)

  

是否必须使用“remeber_token field”?

是的 - 由于可能存在安全问题,Laravel> = 4.1.26是强制性的。

  

我应该将remember_token添加到db?

是的 - 你需要添加它。有关升级的一些具体说明,您需要对模型进行更改:http://laravel.com/docs/upgrade#upgrade-4.1.26

特别需要

  1. 为您的用户表添加一个新的,可空的VARCHAR(100),TEXT或等效的remember_token
  2. 接下来,如果您使用的是Eloquent身份验证驱动程序,请使用以下三种方法更新User类:
  3. -

    public function getRememberToken()
    {
        return $this->remember_token;
    }
    
    public function setRememberToken($value)
    {
        $this->remember_token = $value;
    }
    
    public function getRememberTokenName()
    {
        return 'remember_token';
    }