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权限包的使用。 :sunglasses: :sunglasses: :sunglasses:
- 注: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 协议》,转载必须注明作者和本文链接
老郭博客:laughing:
个人博客地址:www.phpsix.com