Php laravel:如何使用multi';can';途中?
拉威尔5:8Php laravel:如何使用multi';can';途中?,php,laravel,laravel-5,Php,Laravel,Laravel 5,拉威尔5:8 我创建角色、权限、权限\角色、角色\用户 在AuthServiceProvider中: public function boot() { $this->registerPolicies(); $permissions = $this->getPermissions(); if ($permissions) { foreach ($permissions as $permission) { Gate::de
我创建角色、权限、权限\角色、角色\用户 在
AuthServiceProvider
中:
public function boot()
{
$this->registerPolicies();
$permissions = $this->getPermissions();
if ($permissions) {
foreach ($permissions as $permission) {
Gate::define($permission->name, function ($user) use ($permission) {
return $user->hasRole($permission->roles);
});
}
}
}
protected function getPermissions()
{
if (\Schema::hasTable('permissions')) {
return Permission::with('roles')->get();
}
return null;
}
我尝试在路线中使用can
:
$can = 'can:manage_global';
Route::get('/create', 'ProductController@create')->middleware($can)->name('panel.product.create');
它起作用了
但如何使用多罐
我试试这个:
$can = 'can:manage_global,manage_articles';
但它只适用于manage_global,而不适用于manage_文章
$can = 'can:manage_global|manage_articles';
使用所需的条件尝试此操作,我在两个权限条件之间应用了|(或)