Jiang qinghua 5 gadi atpakaļ
vecāks
revīzija
58dfb99abf
3 mainītis faili ar 18 papildinājumiem un 6 dzēšanām
  1. 2 0
      config/admin.php
  2. 12 1
      src/Admin.php
  3. 4 5
      src/Auth/Permission.php

+ 2 - 0
config/admin.php

@@ -118,6 +118,8 @@ return [
 
         'controller' => Dcat\Admin\Controllers\AuthController::class,
 
+        'guard' => 'admin',
+
         'guards' => [
             'admin' => [
                 'driver'   => 'session',

+ 12 - 1
src/Admin.php

@@ -13,6 +13,7 @@ use Dcat\Admin\Traits\HasAssets;
 use Dcat\Admin\Layout\Menu;
 use Dcat\Admin\Layout\Navbar;
 use Illuminate\Contracts\Auth\Authenticatable;
+use Illuminate\Contracts\Auth\Guard;
 use Illuminate\Database\Eloquent\Model;
 use Illuminate\Support\Facades\Artisan;
 use Illuminate\Support\Facades\Auth;
@@ -113,7 +114,17 @@ class Admin
      */
     public static function user()
     {
-        return Auth::guard('admin')->user();
+        return static::guard()->user();
+    }
+
+    /**
+     * Attempt to get the guard from the local cache.
+     *
+     * @return \Illuminate\Contracts\Auth\Guard|\Illuminate\Contracts\Auth\StatefulGuard
+     */
+    public static function guard()
+    {
+        return Auth::guard(config('admin.auth.guard') ?: 'admin');
     }
 
     /**

+ 4 - 5
src/Auth/Permission.php

@@ -6,7 +6,6 @@ use Dcat\Admin\Admin;
 use Dcat\Admin\Models\Role;
 use Dcat\Admin\Layout\Content;
 use Dcat\Admin\Middleware\Pjax;
-use Illuminate\Support\Facades\Auth;
 
 class Permission
 {
@@ -31,7 +30,7 @@ class Permission
             return;
         }
 
-        if (Auth::guard('admin')->user()->cannot($permission)) {
+        if (Admin::user()->cannot($permission)) {
             static::error();
         }
     }
@@ -49,7 +48,7 @@ class Permission
             return true;
         }
 
-        if (!Auth::guard('admin')->user()->inRoles($roles)) {
+        if (!Admin::user()->inRoles($roles)) {
             static::error();
         }
     }
@@ -77,7 +76,7 @@ class Permission
             return true;
         }
 
-        if (Auth::guard('admin')->user()->inRoles($roles)) {
+        if (Admin::user()->inRoles($roles)) {
             static::error();
         }
     }
@@ -103,6 +102,6 @@ class Permission
      */
     public static function isAdministrator()
     {
-        return Auth::guard('admin')->user()->isRole(Role::ADMINISTRATOR);
+        return Admin::user()->isRole(Role::ADMINISTRATOR);
     }
 }