wilsonalencar/laravel-permission

为 Laravel 简单的权限检查。

0.0.6 2019-09-17 14:27 UTC

This package is not auto-updated.

Last update: 2024-09-25 18:09:21 UTC


README

Laravel 5.3

目前该包尚未进行单元测试,但计划稍后进行。

快速安装

首先通过 Composer 安装该包。最佳方式是通过终端使用 Composer 本身进行安装。

composer require leandreaci\laravel-permission:dev-master

或者将包添加到你的 composer.json 文件中,并运行 composer install。

"require": {
   "Foo/Bar" : "*",
   "leandreaci/laravel-permission": "dev-master"
},

完成此操作后,只需将服务提供者添加到你的项目配置文件 config/app.php 中,并对数据库运行提供的迁移即可。

服务提供者

Leandreaci\LaravelPermission\LaravelPermissionServiceProvider::class

在 providers 数组中

'Permission' => Leandreaci\LaravelPermission\Facade\LaravelPermission::class,

迁移

你需要对你的数据库运行提供的迁移。使用 vendor:publish Artisan 命令发布迁移文件,并运行 migrate

php artisan vendor:publish
php artisan migrate

使用

1 - 将权限别名添加到权限表中。2 - 将用户和权限添加到 permission_user 表中。3 - 将 Authorizable 特性添加到你的用户模型中(例如:Laravel 5.3)。

namespace App;

use Illuminate\Notifications\Notifiable;
use Illuminate\Foundation\Auth\User as Authenticatable;
use Leandreaci\LaravelPermission\Traits\Authorizable;

class User extends Authenticatable
{
    use Notifiable;
    use Authorizable;

4 - 检查控制器中的任何方法

    use Leandreaci\LaravelPermission\Facade\Permission;

    class FooController
    {
        public function index()
        {
            if(! Permission::can('view.foo'))
            {
                //do what you want ;)
            }
        }
    }