laravel学习-安装entrust和l5

编程入门 行业动态 更新时间:2024-10-10 21:28:40

<a href=https://www.elefans.com/category/jswz/34/1771436.html style=laravel学习-安装entrust和l5"/>

laravel学习-安装entrust和l5

1.安装 'l5-repository':直接参照github文档:;composer require prettus/l5-repository2>vim config/app.php给 'providers' 元素,添加 'Prettus\Repository\Providers\RepositoryServiceProvider::class,'3>php artisan vendor:publish	在 config/ 下,生成一个 'repository.php' 的配置文件4>安装 'league/fractal',l5-repository的presenter可能需要 - 官方镜像包介绍composer require league/fractal - 进行安装5>vim repository.php我们配置命令的生成器:'generator'  => ['basePath'      => app_path(),'rootNamespace' => 'App\\','paths'         => ['models'       => 'Models','repositories' => 'Repositories','interfaces'   => 'Repositories','transformers' => 'Transformers','presenters'   => 'Presenters',// 'validators'   => 'Validators',// 'controllers'  => 'Http/Controllers',// 'provider'     => 'RepositoryServiceProvider',// 'criteria'     => 'Criteria',// 'stubsOverridePath' => app_path()]]这个只是针对生成的目录进行配置,不想生成这些文件,还不行6>l5-repository的相关的一些命令:php artisan make:entity Post - 有提示,需要生成哪些文件,yes | nophp artisan make:repository "Blog\Post" - 只生成repository,会生成 'model/repository/migration'php artisan make:transformer Post - 生成 transformersphp artisan make:presenter Post - 生成 presenters// 这2个使用较少php artisan make:bindings Post - 会生成 'repositoryProviderServer.php',并绑定一个post相关的服务php artisan make:criteria My - 生成 MyCriteria2.安装 'Zizaco/entrust'直接参照github文档::.html.html1>composer require zizaco/entrust 5.2.x-dev2>vim config/app.php1)给 'providers' 元素,添加 'Zizaco\Entrust\EntrustServiceProvider::class,'2)给 'aliases' 元素,添加 ''Entrust' => Zizaco\Entrust\EntrustFacade::class,'3>php artisan vendor:publish	在 config/ 下,生成一个 'entrust.php' 的配置文件4>vim config/auth.php,可添加 '用户认证' 配置:假设我们需要验证的是后台用户表 'admin_users':'guards' 元素:'admin' => ['driver' => 'session','provider' => 'admin_users',],'providers' 元素:'admin_users' => ['driver' => 'eloquent','model' => App\Models\AdminUser::class,'table' => 'admin_users',],'passwords' 元素:'admin_users' => ['provider' => 'admin_users','email' => 'auth.emails.password','table' => 'admin_password_resets','expire' => 60,],5>vim app/Http/Kernel.php给 'routeMiddleware' 数组,添加 'entrust' 自带的中间件:'role' => \Zizaco\Entrust\Middleware\EntrustRole::class,'permission' => \Zizaco\Entrust\Middleware\EntrustPermission::class,'ability' => \Zizaco\Entrust\Middleware\EntrustAbility::class,6>生成迁移数据表:这里我们需要进行配置:config/entrust.php 进行RBAC权限表的配置。php artisan entrust:migration - 根据我们的entrust.php的配置,生成迁移的数据表语句7>创建真实数据表(暂不执行):php artisan migrate3.安装的RBAC后台权限认证,是没有用户表的,所以我们还得创建 'admin_users' 数据表,以及模仿laravel自带的Auth前台认证。1>参阅laravel的Auth用户认证文档:.html快速配置出前台用户认证:1)php artisan make:auth - 生成一堆文件,以及添加视图:2)vim app/Http/Controllers/Auth/AuthController.phpprotected $redirectTo = '/home';		// 默认是 '/',登录认证成功后的跳转地址3)php artisan migrate - 生成Auth认证相关数据表(暂不执行,因为一旦执行,会生成所有的数据表)就可访问前端页面,登录、注册、忘记密码等页面。2>我们搭建后台认证可查看项目源码,模仿 admin_users 后台用户认证:/*模仿 'laravel5-rbac-example' 项目进行修改:*/
1.数据库相关:1>找到我们项目中的 database/migrations/xx_entrust_setup_table.php,对照 'laravel5-rbac-example' 的database/migrations/的 'xx_entrust_base.php' 和 'xx_entrust_pivot_admin_user_role.php' 进行比对。我们修改成我们自己想要的后台一些字段!2>admin_users数据表和忘记密码表创建2个迁移记录:php artisan make:migration create_admin_users_tablephp artisan make:migration create_admin_password_resets_table编辑2个迁移记录:	xx_create_admin_users_table.phpxx_create_admin_password_resets_table.php2.开始搞admin_users相关内容:1>控制器:app/Http/Controllers/Admin2>中间件:app/Http/Middleware/AuthenticateAdmin.phpphp artisan make:middleware AuthenticateAdmin编辑进行修改3>Kernel.php - 将上面的admin相关的中间件,得注册到 中间件配置文件中vim Kernel.php,在 $routeMiddleware 数组中,添加:'auth.admin' => \App\Http\Middleware\AuthenticateAdmin::class,4>表单请求验证:app/Http/Requests/5>routes.php - 添加后台所有相关的路由6>后台所有相关的 'Model',我们定的目录为 'app/Models/'7>后台模板:resources/views/admin8>public:存放后台静态文件,图片、js、css--------9>复制l5-repository依赖相关目录,这个也是需要的:app/Repositoriesapp/Presentersapp/Transformers10>对复制过来的各个东西进行修改

更多推荐

laravel学习-安装entrust和l5

本文发布于:2024-03-23 22:34:57,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1743628.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:laravel   entrust

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!