Настройка параметров Django для sphinx (документация) - PullRequest
6 голосов
/ 24 марта 2012

У меня есть приложение Django, для которого я пытаюсь настроить документацию. Структура каталогов выглядит следующим образом:

- doc
- project
| - manage.py

Я настроил пути так, чтобы Sphinx мог видеть вещи, но когда я пытаюсь использовать autodoc, некоторые настройки, которые я установил в settings.py, недоступны. Вот как я настраиваю среду, что я делаю не так?

from django.core.management import setup_environ
from project import settings

setup_environ(settings, 'project.settings')

1 Ответ

6 голосов
/ 04 декабря 2012

Я могу думать только о двух причинах, по которым setup_environ() вызов в conf.py вашего Сфинкса не работает:

  • Он не делает свою магию достаточно рано. Вы импортируете другие вещи, которые уже нуждаются в настройках до этой строки.

  • Сам файл settings.py импортирует слишком много. Было бы странно, если бы это было так.

Обратите внимание, что setup_environ() устарела. Однако он не будет удален до Django 1.6.

Другой вариант - использовать os.environ прямо вверху вашего conf.py скрипта. Вы гарантированно успеете туда: -)

import os
os.environ['DJANGO_SETTINGS_MODULE'] = 'project.settings'
...