:::tip 本章概要 代码生成器 Web 管理界面的使用方法,通过可视化界面操作单表生成和批量生成。 ::: # Web 管理界面 登录管理后台,进入「开发工具 → 代码生成」页面,可通过可视化界面操作代码生成。 ![](/demo/27.png) :::warning 数据库要求 代码生成器的 Web 界面通过查询 MySQL 的 `information_schema` 获取表结构信息,**仅支持 MySQL 数据库**。如使用 PostgreSQL / SQL Server / SQLite 等其他数据库,请使用 CLI 命令行方式生成(需自行适配查询语句)。 ::: ## 操作流程 完整操作流程: ``` 1. 登录管理后台 2. 左侧菜单 → 开发工具 → 代码生成 3. 在表列表中搜索目标表(支持表名/表注释模糊搜索) 4. 点击表名可查看字段详情(字段名、类型、注释、是否可空等) 5. 单表生成:点击行末「生成」按钮 批量生成:勾选多表 → 点击「批量生成」按钮 6. 生成成功后,左侧菜单自动出现新模块入口 7. 进入新模块页面,测试增删改查功能 ``` ## 单表生成 1. 在表列表中搜索目标表(支持表名和表注释模糊搜索) 2. 点击目标表行的「生成」按钮 3. 系统自动解析表结构并生成全部代码 4. 生成完成后提示成功 ![](/volume5/2.png) ## 批量生成 1. 勾选多个表(左侧复选框) 2. 点击表格上方的「批量生成」按钮 3. 系统逐表生成,完成后提示成功数量 ![](/volume5/3.png) 批量生成限制:最多 50 个表(`MAX_BATCH_SIZE = 50`)。 ## API 接口 Web 界面底层调用以下 API 接口: ### 查询表分页 ``` GET /api/v1/generator/page?pageNo=1&pageSize=10&tableName=example ``` 返回数据库表的分页数据,支持按表名和表注释模糊搜索。 ### 查询表详情 ``` GET /api/v1/generator/detail/{table_name} ``` 返回单个表的元数据(表名、注释、引擎、行数、字符集等)。 ### 查询表字段 ``` GET /api/v1/generator/columns/{table_name} ``` 返回表的字段列表(字段名、类型、注释、是否可空、默认值等)。 ### 代码生成 ``` POST /api/v1/generator/generate ``` 请求体: ```json { "tableNames": [ "tornado_example|案例表", "tornado_product|商品表" ] } ``` `tableNames` 支持三种格式: | 格式 | 示例 | 说明 | |:----|:----|:----| | 管道分隔 | `"tornado_example\|案例表"` | 表名\|注释,注释覆盖数据库表注释 | | 纯表名 | `"tornado_example"` | 注释从数据库读取 | | 字典 | `{"name": "tornado_example", "comment": "案例表"}` | 结构化格式 | 成功返回: ```json { "code": 0, "msg": "本次共计生成2个模块", "data": 2 } ``` ### 批量生成 ``` POST /api/v1/generator/batchGenerate ``` 请求体和返回格式与「代码生成」接口完全一致。 ## 权限节点 | 权限标识 | 说明 | |:----|:----| | `sys:generator:page` | 查询表分页 | | `sys:generator:detail` | 查询表详情/字段 | | `sys:generator:generate` | 代码生成 | | `sys:generator:batchGenerate` | 批量生成 | ## 与 CLI 的对比 | 维度 | CLI | Web 界面 | |:----|:----|:----| | 入口 | `python generator.py <表名>` | 开发工具 → 代码生成 | | 适用场景 | 开发阶段,快速生成 | 运维阶段,可视化操作 | | 批量生成 | 不支持(循环调用) | 支持(勾选多表) | | 配置微调 | `--output` 导出 → 编辑 → `--config` 导入 | 不支持(直接生成) | | 生成结果 | 完全一致 | 完全一致 | | 预览模式 | `--dry-run` | 不支持 | ## 总结 Web 管理界面提供可视化的代码生成操作,支持单表生成和批量生成。通过选择数据库表、配置生成选项、预览生成文件,一键生成前后端全套代码并自动注册路由和权限。