推荐几个Laravel 后台管理系统

小编推荐几个Laravel 后台管理系统

由百牛信息技术bainiu.ltd整理发布于博客园

一、不容错过的Laravel后台管理扩展包 —— Voyager

简介
Voyager是一个你不容错过的Laravel后台管理扩展包,提供了CRUD操作、媒体管理、菜单构建、数据管理等操作。

官网:https://the-control-group.github.io/voyager/

Github:https://github.com/the-control-group/voyager

视频演示:https://devdojo.com/episode/laravel-admin-package-voyager

安装使用
创建完新的Laravel应用后就可以在根目录下通过以下命令引入Voyager扩展包:

composer require tcg/voyager
接下来创建一个新的数据库并将数据库认证信息添加到.env文件:

DB_HOST=localhost
DB_DATABASE=homestead
DB_USERNAME=homestead
DB_PASSWORD=secret
然后注册Voyager服务提供者以及图片处理服务到配置文件config/app.php的providers数组:

TCG\Voyager\VoyagerServiceProvider::class,
Intervention\Image\ImageServiceProvider::class,
最后,我们可以通过以下命令安装Voyager:

php artisan voyager:install
安装完成后,就可以进入后台查看效果了。最简单的方式是在项目根目录下运行php artisan serve,然后在浏览器中访问http://localhost:8000/admin,这样就可以进入登录认证页面,我们可以使用如下演示账户:

email: admin@admin.com
password: password

二、Laravel Admin RBAC 后台管理系统

Umi 是由laravel 5.3开发的全面的后台管理系统, 包括以下特性
https://github.com/taoyu65/UMIAdmin

BREAD 系统 (编辑, 读取, 添加, 删除, 查看) 要求laravel 5.3
RBAC 权限系统 (基于角色权限开发) 包含2部分, 一部分是 数据库中的数据表的操作权限, 增删改等, 另一部分是管理界面权限操作, 整个权限系统基于数据层面和URL界面的操作与分配
数据表的全面操作 增删改, 搜索, 以及自定义这些操作
表之间关系的设定与操作, 比如可以自定义关联删除,关联更新, 或定义删除某表之前检查是否在其他表存在外键因而不能删除表等, 例如删除一个购物车,里面的物品所在的物品表的数据将一并删除等
自定义显示数据格式, 可以设定任何字段用以什么方式现在在界面.例如一个外键可以显示其ID 或者 显示所对应表字段的名称.
功能简介 (详细攻略正在制作...)

权限系统: 分为2个层次, 硬编码层次 和 比较流行的RBAC系统
硬编码权限: 权限不依赖数据库中的数据, 由代码来编写权限, 系统有相应的接口来实现权限, 硬编码权限拥有比RBAC更高的优先级, 也就是说如果用户被指定
为硬编码权限将忽略所有RBAC权限. 已经实现的权限有: 超级管理员(拥有所有权限, 除了修改代码不能通过数据库改变他的权限)
目的: 可以为不同的用户定制不依赖数据库的永久的权限, 可以定制不同风格的界面以及额外的功能
实现: 在配置文件指定一个用户的硬编码权限名称 > 实现硬编码权限的接口 (指定特有的权限功能) > 在工厂类添加对应的代码用于生成权限对象
风格: 在实现硬编码权限接口中, 可以指定不同的masterpage的模板, 搜索栏目, 页眉, 页尾, 左边栏, 提示栏目, 各个模块均可以实现接口自定义不同风格,
然后通过不同的用户调用不同的界面
RBAC系统: 比较流行的权限解决方案, 本案例的权限细度定制在数据表的增删改查 俗称BREAD, (不支持字段级别的增删改查, 因为本人觉得根本没用 还增加复杂程度)
由于和硬编码权限共存, 所以只有用户没有被指定为特殊的硬编码权限时候才发挥作用. 此权限系统由umiAuth包实现, 调用方式借鉴了entrust, ("动作名称-表名称" 比如
delete-user)
实现1: 如果一个路由只查看一种权限可以使用中间件BreadAccessMiddleware配合路由来实现(逻辑代码完全不用关心权限问题), 路由必须包含table的参数即"{table}"
路由调用中间件要指定要判断的权限动作(比如 'middleware'=> 'umi.bread.access:edit')
实现2: 如果一个页面包含多种不同权限判断, 可以实例化umiAuth然后 调用里面的各种方法来判断权限
自定义数据显示: 用于在浏览, 编辑, 添加数据表记录的时候 自定义数据格式的显示.
例如: 当添加文章信息时候, 文章类别(通常为外键) 需要显示对应数据表的真实类别名称, 而不是主表的数字. 在例如 输入性别的时候可以用下拉框或者单选按钮来替代文本框
实现: 实现对应的接口, 完成接口中的方法
潜力: 只要能想到的数据类型都可以实现, 时间, 文本, 连接, 图片, 星级, 标签(可以带样式, 不同类别不同样式), 外键显示, 等等...
表关系操作: 当删除, 编辑, 一条记录的时候可以自定义触发表关系操作
例如: 删除一个用户触发删除所有用户其他信息的操作, 或增加一个用户以后, 修改某个字段为其加一等等
实现: 通过程序中的向导自定义, 分为4个类别, 内联删除, 外表检查, 自身检查, 自定义
内联删除: 当删除一条记录则同时删除指定的数据, 可以为不同数据表, 删除条件可以自定义
外表检查: 在执行一个动作之前(比如删除, 编辑) 检查指定的一个数据表中的记录是否符合指定的规则. 比如, 为了保持数据完整性,删除或者编辑之前查看是否其他表存在这条数据的外键
自身检查: 在执行一个动作之前(比如删除, 编辑) 检查自身的数据记录是否符合指定的规则, 同外表检查, 只不过检查自身数据记录
自定义: 就是完全自定义
自定义搜索: 对数据表进行搜索条件的配置
例如: 功能定制为Tab页, 可以有多个不同的tab页, 每个tab页里面可以定制不同的搜索选项, 可以定制不同的数据类型. 可以组合搜索选项
菜单定制: 左边栏菜单可以根据不同的用户显示不同的菜单, 属于权限的一部分, 但是仅仅是url链接级别的显示和隐藏. 配合RBAC发挥最大作用.菜单功能在数据库层面上分为, 菜单树 和 json菜单
菜单树: 以树状形态显示所有的菜单, 只有超级管理用会从这个菜单树加载菜单(因为超级管理员拥有全部权限,不受RBAC控制, 需要看到所有菜单)
json菜单: 每一个用户分配一个json菜单, 以json形式存储, json数据是根据彩单树的数据整合而成.(不要和RBAC的用户角色权限混淆)
安装

安装composer 和 laravel 5.3 框架. 请自行安装,可以通过不同方式安装. 推荐composer方式
执行命令 composer create-project --prefer-dist laravel/laravel blog 5.3.*
安装UMI Admin.
执行命令 composer require ym/umi "v0.1.2.*"

如果可以正常使用composer 执行上面命令的可以忽略这个段落, 如果不能正常使用composer的小伙伴可以查看 https://github.com/taoyu65/UMIAdmin/wiki/install
配置数据库连接文件(.env)
DB_HOST=localhost

DB_DATABASE=新建一个空的数据库

DB_USERNAME=用户名

DB_PASSWORD=密码
添加服务提供者.添加下面2行代码到 根目录/config/app.php 里面providers数组里面
YM\UmiServiceProvider::class,

YM\umiAuth\umiAuthServiceProvider::class,
执行下面的命令, 用于安装应用程序
php artisan umi:install (会提示选择安装数据库中数据的语言 1=汉语 2=英语) 输入1然后回车.
附:如果数据库已经安装完毕, 在想更改语言英语或汉语 仅需执行 php artisan umi:install --lang-zh-only(或 --lang-en-only)
设置系统为中文:
在根目录下config/app.php中 设置 'locale' => 'zh_cn', 即可
好了. 可以开始了.

注意:为了保证数据库迁移,数据库结构和一些必要的数据。 请在执行php artisan umi:install之前 保持数据库为空。如果要重新安装请手动清空数据库包括结构。

三、Speedy - 简洁灵活的 Laravel 管理后台

Speedy是基于 vue2 + bootstrap 的 laravel 管理后台,能够快速开发好一个权限后台,而且能够非常方便的生成一级或者二级菜单。

项目地址: https://github.com/HanSon/speedy

欢迎前来 star 以及提 issue !

file

安装

laravel 5.1 以上:

composer require hanson/speedy

laravel 5.1 :

composer require hanson/speedy:~v0.5.0

配置

添加服务提供者

添加 Hanson\Speedy\SpeedyServiceProvider::class, 到 app.php 的 providers 中

发布资源

php artisan vendor:publish --provider="Hanson\Speedy\SpeedyServiceProvider"

修改配置

Speedy 的配置在 config/speedy.php 中,涉及Model的命名空间以及表名(Speedy 会根据配置生成 Models 以及 Migration)

四、基于 Laravel-Admin 在十分钟内搭建起功能齐全的后台模板

简介
为 Laravel 提供后台模板的项目越来越多,学院君已陆续为大家介绍过Laravel Angular Admin、LaraAdmin、Voyager等,网友也贡献了很多后台模板,这对 Laravel 生态来说自然是好事,今天学院君还要给大家介绍一个后台模板扩展包,其官方文档号称可以帮助大家在十分钟内构建器功能完备的 Laravel 应用后台。接下来,让我们来一窥究竟吧。

laravel-admin 是一个用于为Laravel提供后台界面的构建器,仅仅通过数行代码,就可以帮助我们构建CRUD后台。

演示地址:http://120.26.143.106/admin

Github仓库:https://github.com/z-song/laravel-admin

laravel-admin就不多说了,很多人都在使用。

转载于:https://www.cnblogs.com/bainiu/p/8462898.html

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值