2017-05-23 14 views
0

今回はログアウトユーザーをしようとしています...私のルーティングとコントローラは良いですが、私はなぜこのようなエラーが出るのか分かりませんとき、私は)ログアウトしようとしています:Laravel logout rememberトークンエラー

SQLSTATE[42S22]: Column not found: 1054 Unknown column 'remember_token' in 'field list' 

これは、コントローラの私の方法です:

public function logout() 
{ 
    Auth::logout(); 
    return redirect('/'); 
} 

私のログアウトがビュー内のリンクです...何が間違っているのですか?

+0

users_t表に 'remember_token'カラムがあるかどうか確認できますか? –

+0

私のテーブル名はshopUsersですが、私はconfでそれをauthに変更しました(多分ここに問題がありますか?)。そして私はテーブルの店に列を持っていません "remember_token"のようなユーザー - >私は本当にそれが "トークンを覚えている"とは何か分からないと認めなければなりませんなぜこのようなエラーです – wenus

+2

認証に使用されているテーブル'remember_token'カラムを持っています –

答えて

4

laravelでログアウトするには、remember_tokenカラムをusersテーブルに追加する必要があります。認証可能、認証可能からUserクラスを継承したよう

:またはあなたが認証

1

のために使用しているものは何でも、テーブル、私はLaravel 5.5を使用し、約The User Provider Contractを読んでいる、私は何かがまた別の質問のStackOverflowでhereへの答えです見ましたクラスはAuthenticatableContractを使用し、ユーザーのトークンを取得および設定するためのメソッドを実装します。

public function getRememberToken() 
{ 
    return $this->token; 
} 

public function setRememberToken($value) 
{ 
    $this->token = $value; 
} 

public function getRememberTokenName() 
{ 
    return 'token'; 
} 

あなたが好きな言葉「トークン」と使用を置き換えることができます。

だから、簡単な解決策は、あなたのUserクラス(または同等の)中(または実装する)これらのメソッドを上書きすることです。