使用 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