如何在 laravel 5.4 中实施委托

how to implement entrust in laravel 5.4

您好,我是 laravel.I 的新手,不明白如何创建多角色用户。我想创建一个 admin 和 general user 。如果可能的话,我想使用委托(https://github.com/Zizaco/entrust)。我正在使用 Laravel 5.4 并安装委托。如果可能的话,一个解释委托的小例子会有所帮助。

步骤 1. 在 laravel 中创建项目后,打开 composer.json 并更新 require像这样委托对象

"require": {
    "php": ">=7.1.3",
    "fideloper/proxy": "~4.0",
    "laravel/framework": "5.5.*",
    "laravel/tinker": "~1.0",
    "tymon/jwt-auth": "1.0.0-rc.1",
    "zizaco/entrust": "dev-master"
},

然后运行

composer update

步骤 2. 打开 config/app.php 并找到 providers 数组并添加以下行。

Zizaco\Entrust\EntrustServiceProvider::class,

providers 数组下面找到 aliases 并添加以下行

'Entrust'   => Zizaco\Entrust\EntrustFacade::class,

然后运行这个命令

php artisan vendor:publish

之后您将在 config 目录中看到一个名为 entrust.php

的新文件

步骤 3. 打开 app/Http/Kernel.php 并添加中间件

  <?php
/**
 * The application's route middleware.
 *
 * These middleware may be assigned to groups or used individually.
 *
 * @var array
 */
protected $routeMiddleware = [
    ....
    'role' => \Zizaco\Entrust\Middleware\EntrustRole::class,
    'permission' => \Zizaco\Entrust\Middleware\EntrustPermission::class,
    'ability' => \Zizaco\Entrust\Middleware\EntrustAbility::class,
]; ?>

第 4 步。运行 这个

php artisan entrust:migration

以上命令将创建 4 个表 rolespermissionsrole_userpermission_role

现在你可以开始了