Laravel - Entrust 权限管理包安装与配置
Entrust 权限管理包安装与配置 - start#
-
前言:
- 想要安装 Entrust 扩展包,就先要去 Packageist.org 上搜索 Entrust。
- 在 Packageist.org 中查看安装文档,或者在 Entrust 的 github 查看安装文档。
-
安装:
- composer 加载包:
composer require zizaco/entrust:5.2.x-dev
- 或者 在
composer.json
中加入"zizaco/entrust": "5.2.x-dev"
,然后执行composer install
命令。
- composer 加载包:
-
配置:
- 进入
config/app.php
配置文件,在provider
数组中追加如下代码:Zizaco\Entrust\EntrustServiceProvider::class,
在 aliases 数组中追加如下代码:'Entrust' => Zizaco\Entrust\EntrustFacade::class,
- 在
app/Http/Kernel.php
文件的$routeMiddleware
数组中追加如下代码:/* * Entrust 权限包 */ 'role' => \Zizaco\Entrust\Middleware\EntrustRole::class, 'permission' => \Zizaco\Entrust\Middleware\EntrustPermission::class, 'ability' => \Zizaco\Entrust\Middleware\EntrustAbility::class,
- 进入
-
生成迁移文件:
php artisan entrust:migration
-
生成表结构:
php artisan migrate
-
创建 Model 并继承相应的 Model,执行下面两条命令来创建 Model:
php artisan make:model Models/Role php artisan make:model Models/Permission
-
打开 app/Models/Role.php 修改本 model 中的继承关系:
<?php namespace App\Models; use Zizaco\Entrust\EntrustRole; class Role extends EntrustRole { }
-
打开 app/Models/Permission.php 修改本 model 中的继承关系:
<?php namespace App\Models; use Zizaco\Entrust\EntrustPermission; class Permission extends EntrustPermission { }
-
打开 app/User.php 文件,来 use 一下 EntrustUserTrait
<?php namespace App; use Illuminate\Foundation\Auth\User as Authenticatable; use Zizaco\Entrust\Traits\EntrustUserTrait; class User extends Authenticatable { use EntrustUserTrait; protected $fillable = [ 'name', 'email', 'password', ]; protected $hidden = [ 'password', 'remember_token', ]; }
-
-
文件加载:
composer dump-autoload
在这里之讲述了 Entrust 权限包的安装与配置,下一篇文章则要讲述 Entrust 权限包的使用。
- 注:Entrust 权限包需要缓存的支持,所以在这里本人安装了 Redis 缓存。
- 安装:
- Redis-github
- Redis 客户端 (客户端 Windows 和 mac 都支持)
- 上一步安装完成后,只是安装完成了服务端,如果想在 laravel 中使用,需要在项目中加载下面这个包。这个包就相当于 PHP 的扩展包。 执行下面这一行命令开创建 redis 包安装。
- redis 包安装
composer require predis/predis 1.0.*
- redis 安装 - 配置查看如下网址:http://laravelacademy.org/post/1839.html
- redis 配置文件:如果 redis 有密码的话,需要在
config/database.php
文件中关于 redis 的数组中做相应的配置即可。 - 注意:如果 php 环境既安装了 redis 扩展,又操作了上面的步骤,拉取了 redis 扩展包,则需要在
config/app.php
文件下的aliases
数组中 将键名redis
改名即可。
Entrust 权限管理包安装与配置 - end#
本作品采用《CC 协议》,转载必须注明作者和本文链接
老郭博客
个人博客地址:www.phpsix.com

推荐文章: