配置管理
项目里经常会有这些配置:
- 应用名称
- 是否开启调试模式
- 数据库地址
- JWT 密钥
- Redis 地址
- 第三方接口密钥
这些值不应该散落在代码里,更不应该把生产密钥写死到代码仓库。
FastAPI 项目通常用 pydantic-settings 管理配置。
一、安装
pydantic-settings 是 Pydantic 生态里的配置管理包,Pydantic v2 后它是单独安装的。
二、创建配置类
目录结构:
app/core/config.py:
关键点:
三、创建 .env 文件
项目根目录创建 .env:
环境变量名默认不区分大小写,通常习惯用大写。
app_name 会读取 APP_NAME,database_url 会读取 DATABASE_URL。
四、在 main.py 中使用配置
启动:
访问:
可以看到 .env 里的配置。
五、让 FastAPI 标题也使用配置
应用创建时还不能用 Depends,可以直接调用 get_settings():
Depends 适合路由函数参数,普通 Python 代码里直接调用函数即可。
六、不要提交真实密钥
建议提交 .env.example,不要提交真实 .env。
.env.example:
.gitignore:
七、配置命名建议
配置要集中管理。不要在不同文件里到处写:
项目变大后,这种写法很难维护。

