FastAPI通过dotenv读取生产或测试环境配置
1.pycharm中的Run/Debug Configurations设置中配置环境变量
![image](/images/post/Fastapi%E8%AF%BB%E5%8F%96%E7%94%9F%E4%BA%A7%E6%88%96%E6%B5%8B%E8%AF%95%E7%8E%AF%E5%A2%83%E9%85%8D%E7%BD%AE%E6%96%87%E4%BB%B6/pycharm_setting.jpg)
2.读取环境变量
1
2
3
4
5
6
7
8
9
|
print(os.environ.get('PYTHONUNBUFFERED'))
print(os.environ.get('ENVTYPE'))
env_type = os.environ.get("ENVTYPE")
if env_type == "prod":
config_file = "prod.env"
elif env_type == "test":
config_file = "test.env"
|
3.创建env文件及配置类
1
2
3
4
5
6
7
8
|
from pydantic_settings import BaseSettings
class Settings(BaseSettings):
REDIS_URL: str
MYSQL_DATABASE_URL: str
GRIDFS_URL: str
DEBUG: bool
|
test.env文件
1
2
3
4
|
REDIS_URL="redis://127.0.0.1:6379/0?encoding=utf-8"
MYSQL_DATABASE_URL = "mysql+pymysql://root:111111@127.0.0.1:3306/mydatabase?charset=utf8mb4"
GRIDFS_URL="mongodb://localhost:27017/"
DEBUG=True
|
prod.env文件类似
这样很容易配置测试,生产等不同的环境了。
文章作者
梵梵爸
上次更新
2024-01-07
许可协议
原创文章,如需转载请注明文章作者和出处。谢谢