阅读(3522) (11)

Laravel 8 提供上下文

2021-06-29 16:33:50 更新

能够用于授权的 Gate 方法(allowsdeniescheckanynoneauthorizecancannot)和授权 blade directives @can@cannot@canany)可以接收一个数组作为第二个参数。这些数组元素作为参数传递给 gate ,在做出授权决策时可用于其他上下文:

Gate::define('create-post', function ($user, $category, $extraFlag) {
    return $category->group > 3 && $extraFlag === true;
});

if (Gate::check('create-post', [$category, $extraFlag])) {
    // 授权该用户可创建文章
}