[英]Laravel Multiple Auth::attempt
我的laravel v5.4項目中有兩個模型,用戶和管理員。
在config / auth.php中,我將admin添加到警衛和提供者,如下所示:
'guards' => [
'web' => [
'driver' => 'session',
'provider' => 'users',
],
'api' => [
'driver' => 'token',
'provider' => 'users',
],
'admin' => [
'driver' => 'session',
'provider' => 'admins',
],
],
'providers' => [
'users' => [
'driver' => 'eloquent',
'model' => App\Models\User::class,
],
'admins' => [
'driver' => 'eloquent',
'model' => App\Models\Admin::class,
],
],
現在在AdminController類中,我想使用Auth :: attempt函數,但默認情況下它使用users表。 我可以更改config / auth.php中的默認值,如下所示它可以工作,但在這種情況下我不能使用Auth :: attempt for users。
'defaults' => [
'guard' => 'admin',
'passwords' => 'users',
],
我想將用戶設置為默認值,但使用Auth :: attempt('admin',[credentials])等方法為admin使用Auth :: attempt函數。 我如何使用Auth :: attempt for Admin模型?
你直接打電話給警衛,像這樣:
Auth::guard('admin')->attempt($credentials);
或者幫助者:
auth()->guard('admin')->attempt($credentials);
或者,幫助者更短:
auth('admin')->attempt($credentials);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.