分享一个开源的后台管理模板:CatchAdmin
CatchAdmin
是一款基于thinkphp framework和 element admin二次开发而成后台管理系统。因为 thinkphp 的简单高效,文档齐全。在看了很多 thinkphp 生态中的后台管理系统,发现没有一款合适的前后端分离系统。遂开发了 CatchAdmin。 完全利用了 thinkphp6 的新版本特性 ServiceProvider,将管理系统模块之间的耦合降到了最低限度。每个模块之间都有独立的 controller,路由,模型,数据表`。在开发上尽可能将模块之间的影响降到最低,降低了开发上的难度。项目地址:
CatchAdmin 使用了tp6,脱离了app目录,如果你的思维局限在 app
目录下,这将会给你一个很好范例,重新认识 tp
。而且在开发该项目时,弱化了多应用,取而代之是路由。tp6跟laravel越来越像了,不过各自依然有各自的 特色。
CatchAdmin最新版的目录结构跟tp6的结构差不多,前提是你得先了解tp6的目录结构,tp6与其他版本相比,带来了很多特性,是时候改变传统的开发思维了;如果了解过laravel,tp6将会很快上手,当我看了CatchAdmin的流程时,有一种很熟悉的感觉,l l l laravel,给我的第 一感觉就是这样。
特点:
1.权限管理
这块就直接跳过吧,如果一个开源的后台管理不支持权限管理,那还说什么
2.模块开发
目前很多主流的后台管理都支持模块开发,这也跳过吧,了解更多,参见“模块开发”
3.敏感词过滤
CatchAdmin 增加了这个功能模块, 采用了常见 DFA
算法提高查找性能,很多后台管理都没有提供这个功能,而且国内对这管控也是比较严格的,详情参见 “敏感词过滤”
4.定时任务
貌似这个不是比较出奇的特点,干嘛不用crontab呢
5. 代码生成
可以一键生成控制器、模型、数据表,控制器还可以决定是否使用restful风格的API,这一点还是比较喜欢的,这儿就需要自己去调整代码模板了,毕竟这东西不可能满足每一个人的需求,按需修改
前端:
前端使用vue开发,这一点是我第一考虑的,最近再弄vue,这一点刚好缝合。后台整体布局也干净明朗,比较符合我对新后台的预期。
半成品的二开
后语:我一直想找一个vue的管理后台,也喜欢用Form类来生成表单(避免了布局HTML带来的困扰),vue的找了很多,一直找不到合适的,Form表单类的模板也找了很多,基本上没有满足需求的,唯一一个顺手的就是海豚php的Zbuilder,这个表单类真的是太强大了,下次仔细介绍一下Zbuilder。