首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Laravel和spatie/laravel-permission

Laravel和spatie/laravel-permission
EN

Stack Overflow用户
提问于 2018-10-10 17:12:16
回答 6查看 4.8K关注 0票数 1

从用户中删除所有角色的最好或最常用的方法是什么?

我试过了

$roles = $user->getRoleNames(); $user->removeRole($roles);

代码语言:javascript
复制
Return value of App\User::getStoredRole() must implement interface Spatie\Permission\Contracts\Role, instance of Illuminate\Support\Collection returned

提前感谢

EN

回答 6

Stack Overflow用户

发布于 2018-10-11 06:02:08

使用普通的Laravel detach方法,如下所示:

$user->roles()->detach();

票数 4
EN

Stack Overflow用户

发布于 2018-10-10 19:24:14

我现在这样做了,$user->removeRole($user->roles->first());

票数 2
EN

Stack Overflow用户

发布于 2018-10-10 17:14:47

从文档中可以清楚地看到,您可以将Collection实例传递给removeRole,所以我认为您这样做是正确的。

assignRole、hasRole、hasAnyRole、hasAllRoles和removeRole函数可以接受字符串、\Spatie\Permission\Models\Role对象或\Illuminate\Support\Collection对象。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52736629

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档