小泽代码生成(一)| FastAdmin 可视化 CRUD 代码生成插件 功能概述
先说结论小泽代码生成FastAdmin 应用商店名称可视化 CRUD 代码生成是一款基于 FastAdminThinkPHP5的第三方代码生成插件。FastAdmin 框架本身自带官方 CRUD 生成器可以产出 index / add / edit / del 及回收站这套基础结构本插件在此基础上做补充以可视化配置方式内置更多表单组件和预设业务方法减少在生成结果上二次补写的工作量开发者拿到结果后补业务逻辑即可。这篇是系列第一篇先讲清楚它是什么、能做什么、边界在哪后面几篇再按安装接入、创建表格、创建字段、创建方法、生成代码一步步操作。点击 查看代码在线演示官方生成器够用为什么还需要这个插件FastAdmin 自带的 CRUD 生成器覆盖了最基础的增删改查和回收站流程但内置的表单组件种类、预设方法数量都比较有限。实际项目里常见的复杂表单联动、字典、富文本、上传、省市区等和额外操作导入导出、打印、图表、批量修改等官方生成器产出后仍要手动一个个补上。这个插件做的事就是通过可视化界面配置字段和组件把这些常用组件、方法提前内置进生成流程一次带出更多可用骨架。需要先讲清楚它不替你写业务逻辑生成的仍是脚手架权限、业务校验、特殊处理仍然要自己加。它适合谁用已经在写 FastAdmin 的人在官方基础 CRUD 之上少做组件和方法的二次补写把时间留给核心业务刚转 PHP / ThinkPHP 的新人生成结果本身就是一份完整的目录结构样例可以照着改、照着看框架是怎么组织代码的比零散教程更直观。但环境配置、路由这些基础功还得自己学工具不能替代入门。需快速产出可迭代系统原型高效对接客户业务沟通的小伙伴。接入之后会一次性生成哪些文件选好数据表、完成可视化配置后插件按 FastAdmin 常见目录结构产出全套文件不用一个个手动新建控制器application/admin/controller/XXX.php模型application/admin/model/XXX.php验证器application/admin/validate/XXX.php视图add / edit / index / recyclebin.html前端 JSpublic/assets/js/backend/xxx.js语言包application/admin/lang/zh-cn/xxx.php菜单与权限配置同步输出生成代码遵循 FastAdmin 常见写法方便接着开发再次强调上线前要按项目实际情况测试调整生成不等于能直接上线。组件和方法比官方自带多在哪里官方生成器产出基础的 index / add / edit / del 和回收站结构本插件在此之上内置了更多可在可视化界面直接选用的组件和方法表单组件覆盖常见交互文本框、下拉框、动态下拉、单选 / 多选、开关、富文本、文件 / 图片上传、日期、省市区联动、地图、键值对SKU 风格、评分、颜色选择器等40多种完整清单见项目文档。预设业务方法在官方 index / add / edit / del、回收站基础上额外提供导入 / 导出、打印、图表、时间线、重置密码、批量修改、SQL 生成、自定义函数等共20多种。覆盖常规后台的常用操作碰上插件没带的定制逻辑在生成代码上自己扩展即可不用指望一个工具包打天下。三种生成方式分别适合什么情况数据表直接生成——库里已经有表了连库选表直接生成最省事SQL 语句生成——手里查询类型的SQL语句粘贴进去让插件解析字段手工录入——需求还没建表先在可视化界面逐字段定义后面再落库AI生成——正在路上AI 生成正在规划中上线时间以实际发布为准敬请期待(✧∀✧)三种已支持 AI 生成规划中对应项目的不同阶段不用每次都走同一条路。扩展和安全方面支持组件联动、数据字典、表单选项卡能应对稍复杂的企业表单提供指定字段的脱敏展示配置敏感字段可以做掩码提供数据库数据加密以独立插件方式集成不动 FastAdmin 原有目录结构老项目接入成本相对可控。可以先看演示再决定插件附了 3 套演示工程CRUD商城管理系统、CMS 内容管理系统、CRUD演示平台主体代码由插件生成。建议先打开看一眼生成出来的代码长什么样、符不符合自己团队的写法习惯再决定要不要接。演示数据不代表生产环境配置。点击 查看代码在线演示几个先讲在前面的注意点别把它当成生成即上线测试和调整一步不能省组件和方法清单以实际文档为准超出范围的功能老老实实手写这是第三方插件和 FastAdmin 官方没有隶属、授权或认证关系。操作细节放在后续几篇里逐步展开。你在 FastAdmin 开发里觉得最重复、最想交给工具的是哪一段评论区聊聊后面可以优先讲。项目地址见主页 / 文档 / 评论区置顶。本插件为基于 FastAdmin 的第三方插件与 FastAdmin 官方无隶属、授权或认证关系小泽代码生成为产品名称标识尚未取得注册商标不构成注册商标声明。