我使用委托我的laravel 5.5项目来提供ACL系统。当我尝试在我的路由中使用中间件来过滤访问时,它属于以下情况
Route::group(['middleware' => ['role:admin', 'role:hr']],
function () {
//other routes which should be checked by permission
});
如果管理员访问此方法内部的路由,我会收到异常
Symfony \ Component \ HttpKernel \ Exception \ HttpException
No message
如果我删除第二个角色访问
Route::group(['middleware' => ['role:admin']],
function () {
//other routes which should be checked by permission
});
比它的工作方式,但是我需要在权限上拆分此路由访问权限,这可以通过这2个角色进行访问。
在这种情况下我做错了什么?
答案 0 :(得分:0)
您不会将角色检查拆分为单独的数组条目。
可以使用管道符号作为OR运算符:
'middleware'=> [ '角色:管理员|根']
要模拟AND功能,只需使用多个中间件实例
'middleware'=> ['角色:所有者','角色:作家']