2

最近、Djangoプロジェクトを新しいvirtualenvに移動しました。プロジェクトは正常に機能しますが、Sphinxドキュメントの作成に問題があります。

私のconf.pyに私はこれを持っています:

import sys, os

sys.path.append('/path/to/myproject')

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

setup_environ(settings)

しかし、使用するmake htmlと次のエラーが発生します。

from myproject import settings
  ImportError: No module named myproject

どんな助けでも大歓迎です。

4

3 に答える 3

3

conf.pyは次のようになっている必要があります。

import sys, os

sys.path.append('/path/to')

from myproject import settings
from django.core.management import setup_environ
setup_environ(settings)

これが誰かを助けるかもしれないことを願っています。

于 2012-07-20T17:21:10.620 に答える
2

Django1.4は非推奨になりsetup_environました。Django1.4以降の同様のコードは次のとおりです。

import sys, os
cwd = os.getcwd()
parent = os.path.dirname(cwd)
sys.path.append(parent)
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "myproject.settings")
于 2014-07-28T21:31:29.580 に答える
0

Django 1.7.5プロジェクトでこの問題が発生し、それは私たちが行った奇妙なプロジェクトレイアウトの決定にかかっていると思いますが、jwhitlockの答えを使用してこれを解決するためにもう1つのステップが必要でした。

os.environ.setdefault("DJANGO_SETTINGS_MODULE", "myproject.settings")
from django.conf import settings

その役に立たないインポートを行ったときDJANGO_SETTINGS_MODULE、autodocプロセスで指定されたが見つからなかったカスタムDjango設定が見つかりました。これは、プロジェクトが同じ名前の親を持つフォルダーにあるためだと思いますが、検査sys.pathすると「正しい」フォルダーしか表示されないため、インポートは機能するはずですが、設定が見つからないと言って爆発します。

于 2015-05-28T19:50:57.397 に答える