cdebattista/laravel-permission

Laravel Jetstream 的分组与权限

1.0.2 2020-10-12 22:38 UTC

This package is auto-updated.

Last update: 2024-09-15 02:57:48 UTC


README

Build Status Total Downloads Latest Stable Version License License

⭐ 在 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 协议

链接