【问题标题】:How can i assign user-list permission to other roles also in laravel for spatie package(ACL Management)?我如何在 laravel 中为 spatie 包(ACL 管理)中的其他角色分配用户列表权限?
【发布时间】:2019-02-28 07:01:20
【问题描述】:

我在 Laravel 中使用 Spatie 包进行 ACL 管理,它运行良好,但我想问一个问题。如果我必须为任何用户分配用户列表权限像经理这样的角色,即使它有权限,也会产生错误。 构造函数下面的“only”属性的目的是什么,“permission:role-list”没有分配任何功能,是否有任何默认行为?

function __construct()
{
    $this->middleware('permission:role-list');
    $this->middleware('permission:role-create', ['only' => ['create','store']]);
    $this->middleware('permission:role-edit', ['only' => ['edit','update']]);
    $this->middleware('permission:role-delete', ['only' => ['destroy']]);
}

我是否应该假设我必须访问角色控制器的任何功能,而不是它必须在 Spatie 中具有角色列表权限。

如果我想错了,请指导我。

【问题讨论】:

  • 下面列出了您问题第二部分的答案,对于您所说的第一部分会产生错误,请将错误也粘贴到描述中。
  • 它只是告诉我它没有特定的权限如果我分配角色列表权限然后它工作顺利

标签: php laravel laravel-permission


【解决方案1】:

为了将中间件限制为仅控制器类上的某些方法,我们使用only

$this->middleware('permission:role-create', ['only' => ['create','store']]);

现在上面的行只在 createstore 方法上应用列出的中间件。

【讨论】:

    【解决方案2】:

    如果我在没有任何权限的情况下将第一个方法分配给下面的方法,则在构造函数中回答我自己的问题。

     $this->middleware('permission:role-list');
    

    因此,如果任何角色没有此权限,则会生成错误,该角色没有此权限,并且不会检查下一个权限。

    【讨论】:

      猜你喜欢
      • 2020-07-17
      • 1970-01-01
      • 2019-08-06
      • 2022-10-20
      • 2018-07-06
      • 2021-07-14
      • 2021-05-29
      • 2021-08-26
      • 1970-01-01
      相关资源
      最近更新 更多