文章内容
2021/7/14 10:26:08,作 者: 黄兵
Python项目中使用dotenv
最近在开放项目的时候,有一些配置以前直接卸载代码中,导致后面需要修改需要找很久到底是那个文件,时间一长导致很多项目很难维护。
使用python-dotenv可以很方便的管理配置文件。
下面是使用python-dotenv
的示例:
def __init__(self):
dotenv_path = os.path.join(os.path.dirname(__file__), '.env')
if os.path.exists(dotenv_path):
load_dotenv(dotenv_path)
# Local Test Connection string
self.mysql_host = os.environ.get('MYSQL_HOST')
self.mysql_port = os.environ.get('MYSQL_PORT')
self.mysql_user = os.environ.get('MYSQL_USER')
self.mysql_password = os.environ.get('MYSQL_PASSWORD')
self.mysql_database = os.environ.get('MYSQL_DATABASES')
self.charset = 'utf8'
这里加载了配置文件之后,通过os.environ.get('foo')
来获取具体配置参数。
直接在项目的根目录新建一个.env文件,之后写项目的配置参数。
关于使用dotenv带来的好处,可以参考这篇文章:The Twelve-Factor App (简体中文)
具体来说:
12-Factor推荐将应用的配置存储于 环境变量 中( env vars, env )。环境变量可以非常方便地在不同的部署间做修改,却不动一行代码;与配置文件不同,不小心把它们签入代码库的概率微乎其微;与一些传统的解决配置问题的机制(比如 Java 的属性配置文件)相比,环境变量与语言和系统无关。
参考资料:
2、The Twelve-Factor App (简体中文)
3、配置
评论列表