一、使用composer安装php
composer require spatie/laravel-permission
二、建立配置文件laravel
php artisan vendor:publish --provider="Spatie\Permission\PermissionServiceProvider" --tag="config"
生成的配置文件以下,生成的是英文备注,这个只是用来参考缓存
<?php return [ 'models' => [ //权限规则模型 'permission' => Spatie\Permission\Models\Permission::class, //角色模型 'role' => Spatie\Permission\Models\Role::class, ], 'table_names' => [ //角色表 'roles' => 'roles', //权限规则表 'permissions' => 'permissions', //模型是否有权限规则表 'model_has_permissions' => 'model_has_permissions', /* * 模型是否拥有角色权限中间表 */ 'model_has_roles' => 'model_has_roles', /* *角色权限中间表 */ 'role_has_permissions' => 'role_has_permissions', ], /* *权限缓存时间 */ 'cache_expiration_time' => 60 * 24, /* 错误消息是否将权限规则加入到里面 */ 'display_permission_in_exception' => false, ];
三、生成迁移文件composer
php artisan vendor:publish --provider="Spatie\Permission\PermissionServiceProvider" --tag="migrations"
3.1 这个不是很懂,请自行理解ide
若是你为你的 User 模型使用 UUID 或 GUID,你能够更新 create_permission_tables.php
的迁移,并用下面的代码替换为 $table->morphs('model')
:ui
$table->uuid('model_id'); $table->string('model_type');
3.2 执行迁移文件spa
php artisan migrate