【发布时间】:2018-09-02 20:02:53
【问题描述】:
我有两个警卫admin 和users,这里users 是不同类型的
-users
-BD
-SPOC
-RECRUITOR
-LEADERSHIP
现在我有一些控制器,我希望管理员和用户都可以访问。如果其中有人登录。但我不想让其他任何人在没有登录的情况下访问它。
这是我的控制器
类 AdminController 扩展控制器 {
protected $redirectTo = '/admin/dashboard';
protected $redirectAfterLogout = '/admin/login';
public function __construct()
{
$this->middleware('auth:admin');
}
}
在上面的控制器中,如果我使用中间件-auth:admin,那么只有管理员才能访问它,如果我只使用中间件-auth,那么我会将用户带到用户登录屏幕。我想要管理员或管理员之间的任何人领导类型的用户已登录,然后他们就可以访问此控制器。
我希望或条件在中间件中检查这个或那个,即 auth 或 auth:admin 之间的中间件,而不是两者
我该怎么做呢?
我正在使用laravel.我是新手,请帮忙
【问题讨论】:
-
Laravel 使用中间件来处理请求。您可以在路由中指定中间件。您还可以使用 __construct() 函数来指定访问控制器方法的权限。阅读文档Middleware