1.9 KiB
1.9 KiB
5.12 系统配置管理
:::tip 概述
系统配置是运行在数据库里的键值对(gin_config + gin_config_item),供业务页面级别的开关与文案使用。注意与 config/config.yaml(进程配置)区分:一个面向运营、一个面向运维。
:::
两层配置的分工
| config.yaml | 系统配置(本页) | |
|---|---|---|
| 载体 | 文件 + APP_* 环境变量 | gin_config / gin_config_item 表 |
| 变更方式 | 改文件/环境后重启 | 管理界面即时保存 |
| 面向 | 运维(端口/密钥/连接) | 运营(站点名/开关/文案) |
| 消费方 | 启动序列与基础设施 | 业务模块经接口读取 |
表结构
gin_config 配置分组(如站点配置、业务开关组)
gin_config_item 配置项(config 分组下 key + value + 描述)
典型用途
- 站点名称、logo、备案号等展示信息
- 功能开关(注册开放、评论审核……)
- 业务参数文案(客服电话、协议链接)
涉及连接、密钥、端口的绝不要放系统配置——那些必须走 config.yaml(受启动校验与环境变量管控)。
业务侧读取
标准五方法(Page/List/Detail/Add/Update/Delete)经 ModuleSpec 声明,读取走详情/列表接口;变更走管理界面并受权限码保护,操作留痕(操作日志)。
管理界面
配置管理页(分组 + 配置项维护)见 6.14 配置管理。
与参数管理(param)的区别
| 配置(config) | 参数(param) | |
|---|---|---|
| 组织方式 | 分组树 + 项 | 扁平单表 |
| 典型内容 | 成组的站点/业务配置 | 散落的独立参数(如协议版本号) |
| 读取方式 | 按分组/键读取 | 按 code 读取 |
两者都是数据库键值,选型看组织形态:成组用配置,独立用参数。