使用盖茨

Gates 是确定是否允许用户对资源执行特定操作的闭包。Gates 通常在 AuthServiceProvider 的启动方法中定义,并简洁地命名以反映它正在做的事情。只允许高级用户查看某些内容的门的示例如下所示:

Gate::define('view-content', function ($user, $content){
    return $user->isSubscribedTo($content->id);
});

Gate 总是接收用户实例作为第一个参数,在使用门时不需要传递它,并且可以选择性地接收其他参数,例如关注的雄辩模型。