我有这条路线
Route::resource('companies','CompaniesController')->only( 'edit','create')->middleware('can:companies');
并将其分配给授权公司 如您所见,哪个管理员拥有此权限:
user->roles->permissions->companies
而且我仍然无法进入公司创建页面
答案 0 :(得分:0)
您的中间件应映射到Policy中的方法。因此,假设您已经有一个带有create方法的CompanyPolicy,则您的中间件应如下所示:
->middleware('can:create,companies');
答案 1 :(得分:0)
您可以像
一样在Gate
中定义AuthServiceProvider
Gate::define('compagnie', function(User $user) {
// write the condition which determine if the user is allow to perfrorm this action
return $user->roles->permissions->companies;
});