原文链接
https://novusai-saas.github.io/ja/ja/docs/api-reference/tenant-api/configuration-management-api.md配置管理API
本文引用的源码与文档
本文档引用的文件
- backend/app/api/admin/configs.py
- backend/app/api/tenant/configs.py
- backend/app/configs/service.py
- backend/app/configs/registry.py
- backend/app/configs/meta.py
- backend/app/models/system/config.py
- backend/app/schemas/system/config.py
- backend/app/enums/config.py
- backend/migrations/versions/20260116_3f669a3f2342_add_system_config_tables.py
目录
简介
本文件面向配置管理API,系统性梳理平台配置、AI配置、域名设置、用户偏好等配置相关接口。重点说明配置项的分类、继承关系、默认值管理、配置验证、热更新、版本控制、导入导出、批量修改、权限控制以及租户间继承与覆盖规则。文档以代码为依据,提供可追溯的源码路径,并辅以图示帮助理解。
项目结构
配置管理API主要分布在以下模块:
- 控制器层:平台级与企业级配置API控制器
- 服务层:统一的配置读写服务,负责验证、回退与缓存
- 注册中心:集中管理配置分组与配置项元数据
- 模型层:数据库持久化模型,支持平台级与企业级配置
- 枚举与Schema:值类型、作用域、请求/响应结构定义
图表来源
- backend/app/api/admin/configs.py:120-474
- backend/app/api/tenant/configs.py:49-251
- backend/app/configs/service.py:45-800
- backend/app/configs/registry.py:20-311
- backend/app/models/system/config.py:16-357
- backend/app/enums/config.py:16-44
- backend/app/schemas/system/config.py:19-141
章节来源
- backend/app/api/admin/configs.py:120-474
- backend/app/api/tenant/configs.py:49-251
- backend/app/configs/service.py:45-800
- backend/app/configs/registry.py:20-311
- backend/app/models/system/config.py:16-357
- backend/app/enums/config.py:16-44
- backend/app/schemas/system/config.py:19-141
核心组件
- 平台配置控制器:提供平台级配置的分组列表、分组详情、批量更新、SSL DNS巡检、Fernet密钥生成、存储驱动测试与列表等接口。
- 企业配置控制器:提供企业级配置的分组列表、分组详情、批量更新、企业存储状态与连接测试、允许的存储驱动列表等接口。
- 配置服务:封装配置读写逻辑,支持平台与企业配置;实现值回退(企业未设时回退至平台默认)、缓存、HTML净化、值类型规范化与验证、序列化/反序列化。
- 配置注册中心:单例注册中心,维护分组与配置项元数据索引,支持动态注入/撤销选项(如存储驱动)。
- 数据模型:SystemConfigGroup、SystemConfig、SystemConfigValue三张表分别承载分组、配置项元数据与配置值,支持平台级(tenant_id=0)与企业级(tenant_id>0)。
- 枚举与Schema:定义配置值类型、作用域、请求/响应结构,保证前后端契约一致。
章节来源
- backend/app/api/admin/configs.py:120-474
- backend/app/api/tenant/configs.py:49-251
- backend/app/configs/service.py:45-800
- backend/app/configs/registry.py:20-311
- backend/app/models/system/config.py:16-357
- backend/app/enums/config.py:16-44
- backend/app/schemas/system/config.py:19-141
架构总览
配置管理API采用“控制器-服务-注册中心-模型”的分层架构,配合元数据驱动的配置定义与Schema约束,形成可扩展、可验证、可回退的配置体系。
图表来源