【发布时间】:2020-03-18 09:43:07
【问题描述】:
我想用 sphinx 记录我的 cookiecutter django 项目。问题是,当运行make html sphinx 时,我在读取配置文件时出现问题。它说django.core.exceptions.ImproperlyConfigured: Set the USE_DOCKER environment variable
当不调用 django.setup() 时,我的 envs 也会出错:django.core.exceptions.ImproperlyConfigured: Set the POSTGRES_DB environment variable 当我对它们进行硬编码时,错误继续抱怨下一个环境变量。我不能将它们全部硬编码到配置文件中,这不是一个选项。
我的环境变量配置正确。当我运行我的本地主机打印它们时,它们就在那里。似乎狮身人面像无法处理它们。我也在使用 docker,所以也许这会干扰,但我不知道。以下是我的 sphinx 配置的一部分:
sys.path.insert(0, os.path.abspath('..'))
os.environ['DJANGO_SETTINGS_MODULE'] = 'config.settings.local'
这是我的本地设置的一部分:
# ------------------------------------------------------------------------------
# https://django-extensions.readthedocs.io/en/latest/installation_instructions.html#configuration
INSTALLED_APPS += ['django_extensions'] # noqa F405
# https://docs.djangoproject.com/en/dev/ref/settings/#databases
DATABASES = {
# 'default': env.db('DATABASE_URL'), # This was the default value, but modification below seemed necessary
'default': {
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': env("POSTGRES_DB"),
'USER': env("POSTGRES_USER"),
'PASSWORD': env("POSTGRES_PASSWORD"),
'HOST': env("POSTGRES_HOST"),
'PORT': env("POSTGRES_PORT"),
}
}
感谢任何形式的帮助。提前致谢!
【问题讨论】:
-
我很确定这与 docker 环境有关。有没有办法用 docker-compose 运行 sphinx 的
make html?
标签: django docker environment-variables python-sphinx cookiecutter-django