Appearance
数据库与迁移
MiniAdmin 使用 EF Core 管理数据访问,支持 InMemory 和 MySQL。
模式选择
| 模式 | 适合 |
|---|---|
| InMemory | 本地快速体验、单元测试、无数据库联调 |
| MySQL | 集成测试、准生产、生产环境 |
迁移原则
新增或修改实体后,生产环境应通过 EF Core Migrations 管理结构变化。
推荐流程:
- 修改实体。
- 修改 DbContext 映射。
- 新增迁移。
- 检查迁移 SQL。
- 执行测试。
- 更新功能文档。
种子数据
菜单、权限、默认策略、模板等平台基础数据通过初始化逻辑写入。
二开时注意:
- 新增菜单和权限要有稳定编码。
- 已发布环境不要随意修改旧编码。
- 新增 seed version 比直接改旧逻辑更安全。
租户字段
租户业务表建议包含:
text
TenantId查询时根据当前租户过滤。平台级表是否包含 TenantId 要按职责判断。
索引和唯一约束
常见约束:
- 编码唯一。
- 租户内编码唯一。
- 用户名唯一。
- 关联表联合唯一。
新增模块时不要只考虑页面能保存,也要考虑并发和重复数据。
数据库上线检查
- 迁移脚本已执行。
- 初始化数据已执行。
- 管理员账号可登录。
- 菜单权限可加载。
- 租户数据隔离有效。
- 审计和日志表不会无限增长而无人清理。