2017-09-01 11 views
0

私はこのエラーを取得しています:このコードからコール::試み()

Call to undefined method Illuminate\Auth\TokenGuard::attempt()

を:私がインポートされている

if(Auth::guard('admin')->attempt(['email' => $request->email, 'password' => $request->passsword], $request->remember)){ 
      return redirect()->intended(route('admin.dashboard')); 
     }else{ 

Illuminate\Support\Facades\Authas the docs suggest

私のauth.phpが助けるかもしれない

<?php 

return [ 

    'defaults' => [ 
     'guard' => 'web', 
     'passwords' => 'users', 
    ], 
    'guards' => [ 
     'web' => [ 
      'driver' => 'session', 
      'provider' => 'users', 
     ], 
     'api' => [ 
      'driver' => 'token', 
      'provider' => 'users', 
     ], 
     'admin' => [ 
      'driver' => 'session', 
      'provider' => 'admins', 
     ], 
     'admin-api' => [ 
      'driver' => 'token', 
      'provider' => 'admins', 
     ], 
    ], 
    'providers' => [ 
     'users' => [ 
      'driver' => 'eloquent', 
      'model' => App\User::class, 
     ], 
     'admins' => [ 
      'driver' => 'eloquent', 
      'model' => App\Admin::class, 
     ], 
    ], 
    'passwords' => [ 
     'users' => [ 
      'provider' => 'users', 
      'table' => 'password_resets', 
      'expire' => 60, 
     ], 
     'admins' => [ 
      'provider' => 'admins', 
      'table' => 'password_resets', 
      'expire' => 15, 
     ], 
    ], 
]; 
+0

あなたのコントローラにAuth :: guard()メソッドが定義されていますか?それはあなたの管理者ガードの代わりにapiガードのようなトークンガードの1つを使用しようとしているようです。 –

答えて

1

おそらく "トークン"の代わりに "セッション"ガードドライバを使用しようとしていると思います。だから、これを行うにしてみてください。

設定で/ auth.php設定ファイル:

'admin-api' => [ 
    'driver' => 'token', 
    'provider' => 'admins', 
], 

あなたは、あなたが実行する必要があります

'admin-api' => [ 
    'driver' => 'session', 
    'provider' => 'admins', 
], 

にそれを変更する必要があります

  • php職人のキャッシュ:クリア
  • php artisan config:cache

もう一度試してみてください。がんばろう!