sammaye / laravel-permission
快速Laravel权限插件
dev-master
2019-09-17 20:00 UTC
Requires
- php: >=5.4.0
- illuminate/support: >=5.0
This package is auto-updated.
Last update: 2024-09-18 07:19:01 UTC
README
非常简单的Laravel权限(RBAC)插件。
用法
配置
您可以在config/sammaye.permission.php
中找到配置,它可以通过config('sammaye.permission.permissions')
来获取已配置的默认权限列表。
添加权限/角色
向permissions
键添加内容,数组将转换为角色,元素将转换为权限。
更改用户
如果您不使用默认的User
模型,则更改user
键。
添加User
特质
将sammaye\Permission\Traits\HasPermission
添加到您的用户模型中。
完成
您已完成。
命令
刷新权限和角色
permission:refresh
将数据库中的权限与配置中的权限同步,因此如果您的配置中添加了新的角色和/或权限,它们将在数据库中反映出来。
permission:permission {name} {user_id?}
将创建一个权限(如果不存在),并将其分配给一个用户(如果提供)。
permission:role {name} {user_id?}
将创建一个角色(如果不存在),并将其分配给一个用户(如果提供)。
permission:role-permission {role_id} {permission_id}
将角色分配给权限,如果它们不存在则不会创建。
覆盖数据库中的内容
您可以轻松地用您自己的网关替换数据库中的规则,如下所示
Gate::define('update-post', function(User $user, Post $post){ return $user->hasPermission('edit-post') && $user->id === $post->user_id; });
需要改进
- 权限缓存以停止涉及
JOIN
的数据库调用