在Spatie laravel permissions中是否可以将特定模型附加到角色?我需要获取依赖于角色的模型。例如,如果用户具有医生角色,我需要获取医生模型。诊所角色也是如此。
lb3vh1jj1#
如果不知道你是如何建立这个架构的,就很难知道你在寻找什么,但是你可以找到医生......虽然不确定是否直接绑定。我假设您已经创建了一个Spatie角色并将其分配给了一个Doctor类(我假设它是一个扩展的User或类似的类,* 并且使用HasRoles*):
$role = Role::create(['name' => 'doctor']);
找一个医生,正常分配角色:
$doctor = Doctor::find(xxx); $doctor->assignRole($role);
我认为以下内容可能会有所帮助:
$role= Role::findByName('doctor'); $roleClass= $role->getModel();
角色为医生的单据
$docs= Doctor::role('doctor')->get();
如果你想区分阶级(医生、用户),您需要在$doc上运行额外的命令(甚至是User::role集合这样的超集),但这取决于你如何设置查询和流程。我不确定Spatie中是否有一个直接的方法可以完全按照你的意愿来做,但是如果您可以接受拉取用户的超集集合,其中可能包括Doctor类,那么您至少可以通过两个步骤来完成。
$doc
User::role
1条答案
按热度按时间lb3vh1jj1#
如果不知道你是如何建立这个架构的,就很难知道你在寻找什么,但是你可以找到医生......虽然不确定是否直接绑定。
我假设您已经创建了一个Spatie角色并将其分配给了一个Doctor类(我假设它是一个扩展的User或类似的类,* 并且使用HasRoles*):
找一个医生,正常分配角色:
我认为以下内容可能会有所帮助:
角色为医生的单据
如果你想区分阶级(医生、用户),您需要在
$doc
上运行额外的命令(甚至是User::role
集合这样的超集),但这取决于你如何设置查询和流程。我不确定Spatie中是否有一个直接的方法可以完全按照你的意愿来做,但是如果您可以接受拉取用户的超集集合,其中可能包括Doctor类,那么您至少可以通过两个步骤来完成。