6

Django 1.4 にアップグレードした後、次のエラー メッセージが表示されるようになりました。

raise ImportError("Could not import settings '%s' (Is it on sys.path?): %s" % (self.SETTINGS_MODULE, e))
ImportError: Could not import settings 'settings.py' (Is it on sys.path?): No module named py

pydev 2.4 と関係があるかもしれないと読んだので、 pydevを最新バージョンの 2.5 にアップグレードしました。私はエクリプスインディゴを使用しています。

run の構成を調べ始めたところ、django 1.3 の卵がまだ参照されていることに気付きました。そこで、windows/preferences/pydev/interpreter-python に移動すると、システムの PYTHON パスで 1.3 の卵が参照されていました。

これを修正するために、既存の Python インタープリターを削除し、新しいものを再度追加しました。私のpythonはvenvから実行されているので、これを追加しました。エラーが発生します:

エラーメッセージ

これは関係ないと思いますが、システムの PYTHONPATH リストに /venv/lib が表示されていることがわかりますが、Windows ではフォルダーは /venv/Lib と呼ばれているので、これも追加しました。まだ新しいジャンゴの卵が含まれていないので、「ライブラリ」ウィンドウの下に手動で追加しました。

ただし、まだエラー メッセージが表示されます。

アプリはコマンドラインから正常に実行されます。

4

4 に答える 4

5

数時間さまざまなことを試した後、これを理解しました。

pydev 2.5 を使用して新しい Django プロジェクトを作成し、何が起こるかを確認しました。「django 設定モジュール」エントリ (以下を参照) がappname.settingsであることに気付きました。以前は「settings.py」を入れていました。エントリを完全に削除して、最初の問題を解決しました。

ここに画像の説明を入力

この後、「モジュールappnameが見つかりません」というエラーが発生したため、空の __init__.py ファイルをアプリのルートに配置しようとしましたが、うまくいくようでした。

于 2012-04-22T01:40:46.587 に答える
1

virtualenv では、これは通常、インストール プロセス中にベースの python インストールから /Lib を追加するのを忘れた場合です (そのため、PYTHONPATH を検索しても、「threading.py」や「traceback.py」などは見つかりません) 」など

于 2012-04-24T11:09:38.910 に答える
0

に以下を追加することでこれを解決しましたmanage.py

import os

os.environ['DJANGO_SETTINGS_MODULE'] = '<django_app_folder>.settings'
os.environ['SERVER_NAME'] = '<name_of_server>'

<django_app_folder>settings.pyファイルを含むフォルダーの名前です。

<name_of_server>そこにある必要がありますが、それが何に設定されているかが重要であることがわかりませんでした。

于 2012-08-17T04:30:42.623 に答える
0

この問題がありました。私のプロジェクトには PyDev - Django プロパティがなかったため、ここの他のソリューションは機能しませんでした。これは、最初に Django プロジェクトとして作成しなかったためだと思います。代わりに、機能したのは次のとおりです。

  1. プロジェクトを右クリック>プロパティ> PyDev PYTHONPATH>文字列置換変数。
  2. DJANGO_SETTINGS_MODULE という名前の変数を追加します。その値は yourapp.settings にする必要があります (または、既に存在する場合は編集します)。
于 2012-11-09T16:54:30.903 に答える