.env 文件与 Python/Django 有何关联?

rpi*_*var 10 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
Run Code Online (Sandbox Code Playgroud)

我确实找到了这篇 Stack Overflow 帖子,它提供了一些信息,但希望能提供更多信息。

  • 所有 Django 项目都有.env文件吗?
  • 非 Django python 项目是否有.env文件,或者它通常是与 Django 相关的东西?
  • 哪里.env文件通常被称为从?换句话说,项目的其余部分如何知道 .env 文件存在?

Pau*_*ine 8

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

.env文件可能是容器管理器的东西或来自诸如python-decouple 之类的库的东西- 对于实际效果,.env将用于在容器“启动”时填充环境变量或将用于填充实例设置。

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