私は2つのミドルウェアを持っています。StaffMiddlewareとAdminMiddleware Laravel 5.3
マイStaffMiddleware
public function handle($request, Closure $next)
{
if($request->user()->role->name != 'staff'){
return redirect()->route('store');
}
return $next($request);
}
マイAdminMiddleware
public function handle($request, Closure $next)
{
if($request->user()->role->name != 'admin'){
return redirect()->route('store');
}
return $next($request);
}
問題は、私のUnitController
public function __construct(UnitInterface $unit){
$this->middleware('staff');
$this->middleware('admin);
$this->unit = $unit;
}
あるそれはどちらか動作するはず役割は、スタッフや管理者です。両方を組み合わせるために別のミドルウェアを作成する必要がありますか?
はい、私は知っている、私たちは、 "管理者やスタッフ" を実装することはできますか?それがadminまたはstaffの役割を持っている場合、他の問題はリダイレクトされません。 – Rbex
@Rbex、私はあなたのミドルウェアをより柔軟にするためのパラメータの使い方を示すために答えを更新しました。ミドルウェアを変更する必要がありますが、ロールにはさまざまな組み合わせの代わりにミドルウェアが1つ必要です。 – Devon
これは私が探しているものです。 – Rbex