基于laravel的后台UI框架(类laravel-admin)

本人于去年做项目的时候使用了 laravel-admin,当时觉得眼前一亮,原来后台框架还可以这么搞。

但此后结合实际情况,我们使用 thinkphp 比较多,所以我参考它的思路在 Tp5 上面实现了一套类似的框架,见我发表的另一篇文章:分享:基于 (tp5.1、tp6.0) 后台开发框架 (设计思路参考 laravel-admin)

现在又花了几天的时间,基于 laralvel 做了一个移植版本,主要是 UI 生成 (form/table 等) 方面的。

仓库地址:github.com/ichynul/labuilder-web

UI 生成核心仓库:github.com/ichynul/labuilder

与 UI 生成系统与 laravel-admin 的区别:

  1. 表单元素的统一

UI 主要分成 table(表格), form(表单), search(搜索表单)content(自定义内容)
table / form / search 共用表单元素,实现了写法的统一
$form->($field, $label, $colsize);
$table->($field, $label);
$search->($field, $label, $colsize);
$label 为空则使用翻译
form $colsize 为空则默认 12,col-md-12, 即元素单独占一行。
search $colsize 为空则默认 2,col-md-2, 即 6 元素占一行。
表单 (form):

$form->show('id', '编号'); //默认 col-md-12
$form->text('name', '姓名', 6); // col-md-6
$form->radio('gender', '性别', '6 col-xs-12')->options([1 => '男', 2 => '女']); //col-md-6 col-xs-12
$form->switchBtn('status', '启用');
$form->show('created_at', '创建时间');

展示 (show):

// 其实和from是一个东西:
// 把对应的表单元素替换为`show`、`match`、`matches`等纯显示的元素就行。
$form->show('id', '编号');
$form->show('name', '姓名', 6);
$form->match('gender', '性别')->options([1 => '男', 2 => '女']);
$form->match('status', '启用')->options([0 => '否', 1 => '是']);
$form->show('created_at', '创建时间');

//或者懒一点,在表单后面调用:$from->readonly()
//就可自动完成转换所以大多数情况是没必要单独写show页码,除非自动转换的效果达不到要求。
$form->show('id', '编号'); //show
$form->text('name', '姓名', 6); //show
$form->radio('gender', '性别', '6 col-xs-12')->options([1 => '男', 2 => '女']); //match
$form->switchBtn('status', '启用'); //match
$form->show('created_at', '创建时间'); //show
$from->readonly(); //自动把表单元素转换为显示元素

表格 (table):

$table->show('id', '编号');
//使用表单元素[text,teatarea,checkbox,radio,select,switchBtn]配合autoPost方法,实现行内编辑
$table->text('name', '姓名')->autoPost();
$table->radio('gender', '性别')->options([1 => '男', 2 => '女'])->autoPost();
$table->switchBtn('status', '启用');
$table->show('created_at', '创建时间');

搜索表格 (search),配合 table 使用,用于筛选数据:

$search->text('name', '姓名');
$search->radio('gender', '性别');
$search->switchBtn('status', '启用');
  1. 表格工具栏、操作栏高度自由
代码已被折叠,点此展开
  1. 其他很多细节也不同,就不一一展示。
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。