Djangoを複数の方法で、apt-get
およびpip install
経由でインストールしました。彼らは皆、私がDjangoの最新バージョンを持っていると言っています。ターミナルでpythonを実行し、インポートDjangoを入力するたびに、
ImportError: No module named Django
ただし、Django-admin --version
を実行すると
1.4.3
インストールされていることは知っていますが、pythonがDjangoモジュールを見つけられないのはなぜですか?
python
はパス上にないため、Django
を見つけられません。次のようなモジュールを探すpython
のパスのリストを見ることができます。
$ python
>>> import sys
>>> sys.path
インストールされている場所が見つかったらDjango
をインポートし、その場所をpython
のパスに追加できます。次に例を示します。
$ PYTHONPATH=/path/to/Django/parent/dir python
>>> import Django # should work now
しかし、あなたの本当の問題は、python
インストールに何か問題があるということです。 apt-get
を使用してpython
とDjango
の両方をインストールした場合、Django
は上記のような汚いハックのないpython
のパス上にあるはずです。
とはいえ、Djangoを使用する場合の最善策は、apt-get
を使用せず、virtualenv
を使用して仮想環境を作成することです(apt-get
を使用してvirtualenv
自体をインストールできます) DjangoおよびDjangoサイトが仮想環境内でpip
を使用する必要がある場合がある他のモジュールをインストールします。そうすれば、複数のDjangoプロジェクトを並べて、必要なPythonモジュールとバージョンを正確に並べることができます。それはほんのいくつかの余分なステップですが、間違いなく価値があり、将来の大きな不満からあなたを救います。
Djangoプロジェクトの作成にPyCharm Community Editionを使用していたときにも同じ問題が発生しました。
私にとって、次の手順はうまくいきました。
pythonは、仮想環境を作成し、その中にDjangoをインストールしてからサーバーを実行することを望んでいることがわかりました。これをする、
1)
pip install virtualenv
を使用して仮想環境をインストールします。2)プロジェクトフォルダーに移動し、
virtualenv env
と入力します(ここではenv
は仮想環境の名前です)。これにより、env
という名前の新しいフォルダーが作成されます。プロジェクトフォルダ。3)
env/Scripts
を使用して、プロジェクトフォルダー内のcd env/Scripts
に移動します。4)
activate
と入力し、Enterを押します。これにより、仮想環境が開始されます。(env)
が現在のパスの接頭辞になるため、これを確認できます。
1)仮想環境に入ったら、
cd ../..
を使用してプロジェクトフォルダーに戻り、pip install Django
と入力します。2)
Django-admin --version
と入力して、インストールを確認できます。仮想環境内にインストールされているDjangoバージョン番号が表示されます。
python manage.py runserver
と入力して、pythonサーバーを起動します。
私はこの問題を抱えていますが、最近まで私のプロジェクトでvscodeは私の仮想環境を認識していなかったので、プロジェクトを実行しようとするとvscodeがDjangoをインポートできないというエラーが表示されます
仮想環境のライブラリを塗りつぶしにエクスポートしたという私のための修正
pip freeze > req.txt
次に、同じ要件を持つ新しい仮想環境を作成し、それが機能しました
注:これを調べてみてください python仮想環境
複数のpythonバージョンがマシンにインストールされている場合。インストールしようとしているさまざまなパッケージが競合するため、最善のアプローチはvirtualenvを使用することです。