Become a sponsor

概述
本章以项目内置的 example(案例演示) 模块为例,从数据库建表到前端页面联调,手把手演示开发全流程。学完本章后,您将掌握新增业务模块的标准步骤。
┌──────────┐
│ 1. 建表 │ 创建数据库表(含公共字段)
└────┬─────┘
│
▼
┌──────────┐
│ 2. Model │ 创建数据模型(继承 BaseModel)
└────┬─────┘
│
▼
┌──────────┐
│ 3. Validate│ 创建验证器 + Logic 配置 validateClass
└────┬─────┘
│
▼
┌──────────┐
│ 4. Logic │ 创建逻辑层(配置属性 + 钩子)
└────┬─────┘
│
▼
┌──────────┐
│ 5. Controller│ 创建控制器(注解 + 异常处理)
└────┬─────┘
│
▼
┌──────────┐
│ 6. Route │ 注册路由
└────┬─────┘
│
▼
┌──────────┐
│ 7. Menu │ 配置菜单权限(可选)
└────┬─────┘
│
▼
┌──────────┐
│ 8. Frontend│ 前端 API + 页面([详见第 9 章](/zh/frontend/overview.html))
└──────────┘| 约定 | 说明 | 示例 |
|---|---|---|
| 表名 | think_ 前缀 + 小写下划线 | think_example |
| 字段名 | 小写下划线 | create_time、user_id |
| 主键 | 统一使用 id,INT 自增 | id INT PRIMARY KEY AUTO_INCREMENT |
| Model | 继承 BaseModel,类名与表名对应 | class Example extends BaseModel |
| Logic | 继承 BaseLogic 或 BaseTenantLogic | class ExampleLogic extends BaseLogic |
| Controller | 继承 BaseController | class ExampleController extends BaseController |
| 权限码 | sys:模块名:操作 | sys:example:add |
| 路由 | RESTful 风格 | GET /api/example/page |
本章以项目内置的 example(案例演示) 模块为例,完整演示从建表到联调的全过程。该模块是代码生成器的参考模板,涵盖了标准 CRUD 的所有典型场景:
app/model/Example.php # 数据模型
app/validate/ExampleValidate.php # 验证器
app/logic/ExampleLogic.php # 业务逻辑
app/controller/ExampleController.php # 控制器
route/app.php # 路由(第371行)
ui/src/api/tool/example.ts # 前端 API 模块
ui/src/views/tool/example/ # 前端页面