2012-03-23 15 views
5

私はドキュメントを設定しようとしています。次のようなディレクトリ構造は次のとおりです。スフィンクスは物事を見ることができるように、私はパスを設定しているsphinx(ドキュメント)のDjango設定を設定する

- doc 
- project 
| - manage.py 

が、私はautodocのを使用しようとすると、私はsettings.pyに設定した設定の一部ではありません利用可能です。ここで私は環境をどのように設定していますか、私は何が間違っていますか?

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

setup_environ(settings, 'project.settings') 
+0

他の設定は文書化されていますか? settings.pyファイル(関連する部分)を表示できますか? – mzjn

+0

正確にその環境を設定していますか?それがあなたのスフィンクスの 'conf.py'にあればOKです。他のファイル(manage.pyなど)に入っている場合、スフィンクスはそれらを読み取っていない可能性があります。 –

+0

@ brian-hicks、そのenv設定コードのどこに更新がありますか? –

答えて

7

私は、あなたのスフィンクスのconf.pysetup_environ()呼び出しが動作しない理由の2つの原因を考えることができます。

  • それは十分に早くその魔法を行いません。 の前に既に設定が必要なその他のものをインポートします。その行。

  • settings.py自体があまりにも多くインポートされています。しかし、これが当てはまるなら、奇妙なものになるでしょう。

setup_environ()は非推奨です。しかし、Django 1.6までは削除されません。

もう1つの方法は、conf.pyスクリプトの先頭にあるos.environを使用することです。あなたはそこにいることが保証されています:-)

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

私は 'DJANGO_SETTINGS_MODULE'を指定してコマンドを実行することでこれに相当する処理を行いました。これもうまくいったでしょう。 –

関連する問題