我是Django/Python的新手,我正在努力弄清楚.env
文件与Django项目之间的关系。
示例.env
:
DATABASE_URL=postgres://postgres_user@db:xxxx/postgres_db
DJANGO_SETTINGS_MODULE=spare.settings.dev
SECRET_KEY=example
我确实找到了这个Stack Overflow的帖子,它提供了一些信息,但我希望能得到更多。
- 所有Django项目都有
.env
文件吗 - 非Django python项目是否有
.env
文件,或者它通常是与Django相关的东西 .env
文件通常从哪里调用?换句话说,项目的其余部分如何知道.env文件的存在
我们只能猜测,因为我们无法访问您的实际环境。
.env
文件可能是容器管理器的东西,也可能是python解耦库中的东西——为了达到实际效果,.env
将在容器"启动"时用于填充环境变量,或者将用于填充实例设置。
Twelve Factor应用程序流行一种常见模式:第三项是"在环境中存储配置"。然后在settings.py
文件中使用KEY = os.environ.get('KEY', 'defaul_value')
。其想法是将实例设置与项目设置与代码分离。