.env文件与Python / Django有什么关系?

时间:2018-08-01 01:46:45

标签: python django environment-variables

我对Django / Python很陌生,我试图弄清楚.env文件与Django项目的关系。

示例.env

DATABASE_URL=postgres://postgres_user@db:xxxx/postgres_db
DJANGO_SETTINGS_MODULE=spare.settings.dev
SECRET_KEY=example

我确实设法找到this Stack Overflow post,它提供了一些信息,但希望能提供更多信息。

所有Django项目是否都有一个.env文件?

非Django python项目是否有一个.env文件,或者通常是与Django相关的文件?

通常从何处调用.env文件?换句话说,项目的其余部分如何知道.env文件存在?

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

我们只能猜测,因为我们无权访问您的实际环境。

.env文件可以是容器管理器,也可以是python-decouple之类的库中的文件-出于实际效果,.env将用于在容器“启动”时填充环境变量。或将用于填充实例设置。

Twelve-Factor app流行一种常见的模式:项目III是“在环境中存储配置”。然后,在settings.py文件中使用KEY = os.environ.get('KEY', 'defaul_value')。想法是将实例设置与项目设置与代码分开。