使用 DJANGO_SETTINGS_MODULE 时如何导入设置?
How do I import settings when using DJANGO_SETTINGS_MODULE?
我有一个 Django 项目并且正在使用 DJANGO_SETTINGS_MODULE 来管理每个环境设置。我为每个环境创建了不同的设置文件,但是,我很困惑如何在不更改代码导入的情况下访问这些设置。例如,我有这个设置目录结构:
stats/
config/
settings/
__init__
base.py
dev.py
prod.py
base.py
有我所有的默认设置,包括一些 API 第三方服务的密钥。我在每个环境中覆盖这些:
base.py
API_KEY = "default"
dev.py
from base import *
API_KEY = "dev"
prod.py
from base import *
API_KEY = "prod"
当我启动我的服务器时,我使用
./manage.py runserver --settings=stats.config.settings.dev
但是我如何访问 API_KEY
而不必在每次部署时将“dev”更改为“prod”?这就是我目前在我的代码中访问 API_KEY
的方式:
from stats.config.settings.dev import API_KEY
我似乎无法在任何地方找到正确的答案。谢谢!
You access your settings via django.conf.settings
,你不应该直接 import/access 他们
from django.conf import settings
settings. API_KEY
我有一个 Django 项目并且正在使用 DJANGO_SETTINGS_MODULE 来管理每个环境设置。我为每个环境创建了不同的设置文件,但是,我很困惑如何在不更改代码导入的情况下访问这些设置。例如,我有这个设置目录结构:
stats/
config/
settings/
__init__
base.py
dev.py
prod.py
base.py
有我所有的默认设置,包括一些 API 第三方服务的密钥。我在每个环境中覆盖这些:
base.py
API_KEY = "default"
dev.py
from base import *
API_KEY = "dev"
prod.py
from base import *
API_KEY = "prod"
当我启动我的服务器时,我使用
./manage.py runserver --settings=stats.config.settings.dev
但是我如何访问 API_KEY
而不必在每次部署时将“dev”更改为“prod”?这就是我目前在我的代码中访问 API_KEY
的方式:
from stats.config.settings.dev import API_KEY
我似乎无法在任何地方找到正确的答案。谢谢!
You access your settings via django.conf.settings
,你不应该直接 import/access 他们
from django.conf import settings
settings. API_KEY