kilroyweb / permissions
Laravel 的基于类的授权
1.0.7
2017-01-18 18:55 UTC
This package is not auto-updated.
Last update: 2024-09-24 23:50:18 UTC
README
Laravel 的基于类的授权
安装
添加到提供者
KilroyWeb\Permissions\Providers\PermissionServiceProvider::class,
发布配置
php artisan vendor:publish --tag=config
生成权限
php artisan make:permission CLASSNAME
例如
php artisan make:permission ManageUsers
将权限添加到角色
创建一个新的迁移
Schema::create('role_permissions', function (Blueprint $table) {
$table->increments('id');
$table->integer('user_id');
$table->string('permission');
$table->timestamps();
});
和模型
php artisan make:model RolePermission
将权限添加到用户
创建一个新的迁移
Schema::create('user_permissions', function (Blueprint $table) {
$table->increments('id');
$table->integer('user_id');
$table->string('permission');
$table->timestamps();
});
和模型
php artisan make:model UserPermission
添加 HasPermissions 特性
将 HasPermissions 特性添加到您的 User/Role 模型中
use \KilroyWeb\Permissions\Traits\HasPermissions;
以及指向权限模型的指针
protected $permissionsClass = \App\UserPermission::class;
特性提供了一些有用的属性和方法
$user->permissionClassNames
使用 Laravel 的 hasmany 返回直接链接的权限类
$user->permissions
返回权限类实例的集合
添加/删除权限的方法
$user->addPermission($permissionInstance); $user->deletePermission($permissionInstance); $user->syncPermissions($permissionInstances);