用途
- 安全性 :有效防止因为代码开源导致数据库账号密码等隐秘信息泄露;
- 便捷性 :一次配置环境变量即可在本当前项目中全局使用;
详细过程
本文以利用pyCharm为fastapi项目配置环境变量来讲解
- 首先在项目的启动入口,进行如下设置
   - 进行环境变量的相关映射配置
from pydantic import BaseSettings, Field
class Config(BaseSettings):
REDIS_HOST: str = Field('localhost', env='REDIS_HOST')
REDIS_PORT: int = Field(6379, env='REDIS_PORT')
REDIS_PASSWORD: str = Field('', env='REDIS_PASSWORD')
REDIS_DB: int = Field(0, env='REDIS_DB')
DB_HOST: str = Field('localhost', env='POSTGRE_HOST')
DB_PORT: int = Field(5432, env='POSTGRE_PORT')
DB_USER: str = Field('postgres', env='POSTGRE_USER')
DB_DBNAME: str = Field('postgres', env='POSTGRE_DBNAME')
DB_PASSWORD: str = Field('', env='POSTGRE_PASSWORD')
SECRET_KEY: str = Field('', env='JWT_KEY')
HELLO:str=Field('这里是默认值,没有环境变量即输出这部分',env='HELLO_WORD')
config = Config()
- 调用配置
 - 最后启动服务器发现成功调用该配置的环境变量

|