laravel权限管理
程序员文章站
2022-04-11 20:34:23
...
这篇文章介绍的内容是关于laravel权限管理,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下
用这个包:
https://github.com/spatie/laravel-permission
中文翻译:
https://laravel-china.org/topics/8018/extension-recommendation-role-and-authority-control-in-spatielaravel-permission-laravel-applications
补充的方法:
#获取所有拥有这个权限的用户: $users = User::role($role_name)->get();
$role=Role::find($role_id); #获取这个角色已经有的权限 $permissions = $role->permissions; #获取这个角色没有的权限 $diffpermissions = Permission::whereNotIn('id', $permissions->pluck('id'))->get();
#清除现有权限及缓存,并重新分配权限,权限可以是数组$role->syncPermissions($permissions);
#获取一个用户的所有权限,$user是User的一个实例$permissions = $user->getAllPermissions();
#给用户分配角色,使其继承这个角色的的权限。 $user->assignRole('writer'); #给角色分配权限 $res = $role->givePermissionTo($permissions); #给用户分配权限,三种方式都可以 $user->givePermissionTo('edit articles'); // You can also give multiple permission at once$user->givePermissionTo('edit articles', 'delete articles'); // You may also pass an array$user->givePermissionTo(['edit articles', 'delete articles']); // 获取所有已定义的角色的集合 $roles = $user->getRoleNames(); // 返回一个集合
#可以使用下面其中一种方法将多个权限同步赋予到一个角色: $role->syncPermissions($permissions); $permission->syncRoles($roles); #可以使用以下其中一种方法通过角色去删除权限: $role->revokePermissionTo($permission);$permission->removeRole($role);
相关推荐:
以上就是laravel权限管理的详细内容,更多请关注其它相关文章!
上一篇: 谈谈js中的prototype及prototype属性解释和常用方法_javascript技巧
下一篇: 提示Trying to clone an uncloneable object of class Imagic的解决_php技巧
推荐阅读
-
江湖家居门户系统6.0特色功能之用户等级权限控制
-
717淘宝联盟线下沟通会之天猫新跨店权限详解
-
abp(net core)+easyui+efcore实现仓储管理系统——使用 WEBAPI实现CURD (十二)
-
小米9 Pro 5G搭载专业原色屏 雷军:支持色彩管理、出厂统一校色
-
-bash: /home/java/jdk1.8.0_221/bin/java: 权限不够
-
内容平台管理难题如何破?知乎的答案是这样的
-
ASP进阶之文章在线管理更新(11)
-
分布式系统之中心化复制集管理
-
在微信开发框架中增加对菜单分组的管理,方便多个项目*切换处理和功能测试
-
Mac版本HBuilder提示没有jdk或者无权限操作的情况怎么解决?