zoukankan      html  css  js  c++  java
  • Laravel 5.1 ACL权限控制 四 之middleware

    1、创建Middleware

    php artisan make:middleware MustBeAnAdmin
    

    2、实现 MustBeAnAdmin.php中的handle方法,判断登录的用户是否为管理员

        public function handle($request, Closure $next)
        {
            if($request->user() && $request->user()->isAdmin()) {
                return $next($request);
            }
            return  redirect('/');
        }
    

      在User.php中实现isAdmin方法

        public function isAdmin() {
            return $this->hasRole('admin');
        }

    3、在Kernel里的$routeMiddleware注册middleware路由

    'admin' => AppHttpMiddlewareMustBeAnAdmin::class,
    

    4、在PostController.php中实现middleware

        public function __construct()
        {
            $this->middleware('admin');
        }
    

    5、到此我们再在roles、role_user表中个添加一条数据 

      roles表

      

      role_user表

       

      登录不同的用户,经测试访问正常(admin能正常访问,member访问跳转到首页),

      如果访问有问题,请在第4步  $this->middleware('admin'); 前添加 Auth::loginUsingId(1); 再次测试

     

  • 相关阅读:
    590. N-ary Tree Postorder Traversal
    C++——指针3
    C++——指针2-指向数组的指针和指针数组
    C++——指针1
    C++——二维数组和对象数组
    C++——一维数组
    C++——程序的结构
    C++——类与对象
    C++——函数
    C++——简单程序设计
  • 原文地址:https://www.cnblogs.com/Caoxt/p/5010627.html
Copyright © 2011-2022 走看看