使用蓋茨
Gates
是確定是否允許使用者對資源執行特定操作的閉包。Gates
通常在 AuthServiceProvider
的啟動方法中定義,並簡潔地命名以反映它正在做的事情。只允許高階使用者檢視某些內容的門的示例如下所示:
Gate::define('view-content', function ($user, $content){
return $user->isSubscribedTo($content->id);
});
Gate
總是接收使用者例項作為第一個引數,在使用門時不需要傳遞它,並且可以選擇性地接收其他引數,例如關注的雄辯模型。