cdebattista / laravel-permission
Laravel Jetstream 的分组与权限
1.0.2
2020-10-12 22:38 UTC
Requires
- php: ^7.3
- doctrine/dbal: ^2.11
- illuminate/support: ^8.0
Requires (Dev)
- inertiajs/inertia-laravel: ^0.2.15
- laravel/jetstream: ^1.4
- orchestra/testbench: ^6.2
- phpunit/phpunit: ^9.4
- tightenco/ziggy: ^0.9.4
This package is auto-updated.
Last update: 2024-09-15 02:57:48 UTC
README
⭐ 在 GitHub 上 Star —— 这很有帮助!
目录
安装
Composer
composer require cdebattista/laravel-permission
Inertia
目前仅支持与 Inertia 一起使用的 Jetstream。
在本地安装并使用
php artisan serve
时,将 .env 中的APP_URL=http://127.0.0.1:8000
修改。否则,您将得到以下错误:Access to XMLHttpRequest at 'https:///users' from origin 'http://127.0.0.1:8000
php artisan permission:install inertia
npm install && npm run dev
php artisan migrate
工作原理
Inertia
您可以根据自己的意愿自定义操作、模型、策略和页面。
PHP
在 PHP 代码中
$user->hasPermissions(['view_user', 'view_group', 'view_permission']);
保护路由
Route::group(['permissions' => ['administrator', 'create_user', 'view_user', 'edit_user', 'delete_user']], function (){ Route::resource('users', Inertia\UserController::class)->except(['show']); });
Vuejs
在 VUE 文件中
this.HasPermissions(['view_user', 'view_group', 'view_permission'])
您可以使用指令 v-can
<div v-can="['view_user', 'view_group', 'view_permission']">...</div>
许可协议
Laravel Permission 是开源软件,许可协议为 MIT 协议。