colbeh / access
laravel 角色权限系统包
1.0.17
2024-08-05 10:13 UTC
README
1- 使用 Composer require colbeh/access
2- 添加配置文件
php artisan vendor:publish --provider="Colbeh\Access\ServiceProvider"
3- 前往 config/access_colbeh 并设置您的管理员守卫以检查权限。默认使用在配置中设置的默认守卫
auth.defaults.guard
4- 将此 HasRoles 特征添加到您的管理员模型。
use HasRoles
5- 迁移
php artisan migrate
6- 前往
database/seeders/PermissionsSeeder
并添加您的权限。
7- 确认您的权限
php artisan db:seed --class=PermissionsSeeder
8- 前往 App/Http/middleware/CheckPermission.php 并添加您的条件
9- 将 checkPermission 添加到中间件内核
升级
composer require colbeh/access:x.x.x
用法
规则
您可以在以下位置添加规则:
App/Http/middleware/CheckPermission.php
每个控制器和方法
通过 gate 检查
如果您想在 blade 中检查单个权限,可以使用 "permission" 守卫
@can('permission','root') {{-- has permission --}} @endcan
通过助手检查
如果您想在代码中检查单个权限,可以使用 "hasAccess" 方法
if(Access::hasPermission('root')){ // access granted }else{ // access denied }
角色和权限的添加和编辑
以下是一些添加和编辑角色和权限的函数
* getAdmin ($id) * getRole ($id) * roleStore ($name,$desc,$permissionIds) * roleUpdate ($roleId,$name,$desc,$permissionIds=null) * roleToggle ($adminId,$permissionId) // toggle a role to admin * roleAttach ($adminId,$permissionId) // add a role to admin * roleDetach ($adminId,$permissionId) // remove a role from admin * rolesList() * permissionToggle ($roleId,$permissionId) // toggle a permission to role * permissionAttach ($roleId,$permissionId) // add a permission to role * permissionDetach ($roleId,$permissionId) // remove a permission from role * permissionsList ($roleId=null)