我如何搜索具有 2 个角色且具有 Spatie Laravel 权限的用户?

How can I search for a user who has 2 roles with Spatie Laravel-permission?

我正在与 Laravel 合作,目前我只关注权限,我需要验证如果用户具有卖家和管理员的角色,他们将列出所有卖家,以防他们别,列个项目就行了

我尝试创建自己的函数,但我总是陷入 True,只允许我不再验证 1 个角色

public function isSeller(){

  foreach (Auth::user()->getRoleNames() as $role) {
     if ($role == 'vendedor') {
          return true;
     } else {
          return false;
     }
  }
}

如果在之前的查询中如果我输入 && $role == 'admin' 它总是 return true 即使用户没有角色。

您可以直接按照下面给出的方式进行检查,如果用户具有卖家或管理员角色,它将 return 为真

Auth::user()->hasRole('seller','admin')

如果您想检查用户是否同时拥有这两个角色,那么

Auth::user()->hasAllRoles('seller','admin')