我正在使用Spatie
的权限角色包。
我知道有两种防止用户访问控制器方法的方法。
1。 __construct
public function __construct()
{
$this->middleware('permission:show products');
$this->middleware('permission:create products', ['only' => ['create','store']]);
$this->middleware('permission:edit products', ['only' => ['edit','update']]);
$this->middleware('permission:destroy products', ['only' => ['destroy']]);
}
2。每种方法
public function edit()
{
//
if (Gate::denies('edit products')) {
//get out
}
//do something
}
public function show()
{
//
if (Gate::denies('show products')) {
//get out
}
//do something
}
有没有一种更好的方法,而不必在每个方法上都定义?