django - Django sphinx 文档不读取设置文件中的环境变量
问题描述
我想用 sphinx 记录我的 cookiecutter django 项目。问题是,当运行make html
sphinx 时,我在读取配置文件时遇到了问题。它说django.core.exceptions.ImproperlyConfigured: Set the USE_DOCKER environment variable
当不调用django.setup()
它时,我的环境也会出错:django.core.exceptions.ImproperlyConfigured: Set the POSTGRES_DB environment variable
当我对它们进行硬编码时,错误继续抱怨下一个环境变量。我不能将它们全部硬编码到配置文件中,这不是一个选项。
我的环境变量配置正确。当我运行我的本地主机打印它们时,它们就在那里。似乎狮身人面像无法处理它们。我也在使用 docker,所以可能会干扰,但我不知道。这是我的狮身人面像配置的一部分:
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"),
}
}
感谢任何形式的帮助。提前致谢!
解决方案
因此,显然某些应用程序无法使用 environ 从文件中读取设置。另一个问题是 docker alpine 图像没有make
预先安装。
我通过make
在我的 docker 映像 ( apk add make
) 中安装并在使用docker-compose -f local.yml run django make -C ./docs html
. 感谢 uzi0espil 带我去那里。
有关更多信息,请参阅:
https://github.com/pydanny/cookiecutter-django/issues/1747 https://github.com/cookiecutter/cookiecutter/issues/1251
推荐阅读
- image - 如何将 BMP 转换为 RBG JPEG
- python - 登录网站自动化后下载xml文件
- python - 使用python提取word文件表,然后导出到excel
- javascript - Angular:从服务器导入JSON文件,在项目外部,不使用Get方法
- httprequest - CosmosDB Rest API - Http 请求
- c# - 如何将颜色与透明度混合?
- cuda - 我可以修复我的 GPU 时钟频率以确保一致的分析结果吗?
- javascript - Jquery 正则表达式模式不验证
- java - Apache Camel jackson unmarshaller 不工作
- python - 如果 Python 中的 scipy.optimize.dual_annealing 函数,R 等效项是什么