コマンド ラインから Django を実行しようとすると、次のエラーが発生します。
File manage.py, line 8, in <module>
from django.core.management import execute_from_command_line
ImportError: No module named django.core.management
これを解決する方法についてのアイデアはありますか?
django がインストールされていないようです。このコマンドによって作成されたディレクトリを確認する必要があります。
python -c "from distutils.sysconfig import get_python_lib; print get_python_lib()"
そこにdjangoパッケージがあるかどうかを確認するには。
サイト パッケージ内に django フォルダーがない場合は、django がインストールされていません (少なくともそのバージョンの python では)。
複数のバージョンの python がインストールされていて、django が別のバージョンの中にある可能性があります。python
入力してからTABを押すと、pythonのすべてのバージョンを見つけることができます。ここに私が持っているすべての異なるpythonがあります。
$python
python python2-config python2.6 python2.7-config pythonw2.5
python-config python2.5 python2.6-config pythonw pythonw2.6
python2 python2.5-config python2.7 pythonw2 pythonw2.7
Python の各バージョンに対して上記のコマンドを実行し、それぞれの site-packages ディレクトリ内を調べて、それらのいずれかに django がインストールされているかどうかを確認できます。例えば:
python2.5 -c "from distutils.sysconfig import get_python_lib; print get_python_lib()"
python2.6 -c "from distutils.sysconfig import get_python_lib; print get_python_lib()"
たとえばpython2.6の中でdjangoを見つけた場合は、元のコマンドを試してください
python2.6 manage.py ...
sudo pip install django --upgrade
私のためにトリックをしました。
同じエラーが発生し、次の方法で修正しました。
次のコマンドを使用して仮想環境をアクティブ化する必要がありました
source python2.7/bin/activate
ほとんどの場合manage.py
、最初の行で始まり!/usr/bin/python
ます。これは、仮想環境のものではなく、システム グローバル python を使用していることを意味します。
だから交換する
/usr/bin/python
と
~/projectpath/venv/bin/python
そしてあなたは良いはずです。
さて、virtualenv と django をインストールした後、今日同じエラーに直面しました。私にとっては、django のインストールに sudo ( sudo pip install django ) を使用したことがあり、 sudoなしでmanage.py runserverを実行しようとしていました。sudo を追加したところ、うまくいきました。:)
私は同じことを経験し、これが私がしていることです。
最初の私のインストール
pip install -r requirements.txt
私のアクティブな環境にはありません。だから私は自分の環境をアクティブにしてからもう一度実行しました
pip install -r requirements.txt
次のようになります。
仮想環境を作成しましたが、django モジュールはその環境にのみ属しています。virtualenv は他のすべてのものから分離されているため、これが表示されています。
さらに支援が必要な場合は、次の手順を実行してください。
1.仮想環境が保存されているディレクトリに切り替えて、django モジュールを実行できます。
2. または、pip または easy_install を実行して、django を python->site-packages にグローバルにインストールできます。
pip を使用したコマンド: pip install django
次にこれを行います:
import django print (django.get_version()) (使用する python のバージョンによって異なります。これは python 3 以降のシリーズ用です)
python manage.py runserver を実行し、:localhost:8000 と入力して Web ブラウザーを確認すると、django を使用したページが表示されるはずです。
お役に立てれば。
これが他の人に役立つ場合... virtualenvがデフォルトでpython2.7になり、Ubuntuを使用しているときにPython3を使用してDjangoを呼び出していたため、この問題が発生しました。
私のvirtualenvが使用していたpythonを確認するには:
$ which python3
>> /usr/bin/python3
python3 を指定して新しい virtualenv を作成しました (virtualenv ラッパーhttps://virtualenvwrapper.readthedocs.org/en/latest/を使用):
$ mkvirtualenv --python=/usr/bin/python3 ENV_NAME
これで、python パスは virtualenv python を指すようになります。
$ which python3
>> /home/user/.virtualenvs/ENV_NAME/bin/python3
私の場合、Ubuntuを使用しています。問題は、通常のユーザーとしてそのフォルダーに書き込む権限がないことです。sudo
コマンドの前に を追加するだけで、完全に機能するはずです。私の場合sudo python manage.py syncdb
。
私の場合、MacでpyCharm 5を使用しました。私もこの問題を抱えていましたが、このコマンドを実行した後、問題は解決しました
sudo pip install django --upgrade
これは、Python プロジェクトのディレクトリ構造を変更した場合にも発生します (私はこれを実行しましたが、動作の変化に戸惑いました)。その場合、/bin/activate ファイルの行を変更する必要があります。たとえば、あなたのプロジェクトが
/User/me/CodeProjects/coolApp/
あなたのアクティベートファイルは
/User/me/CodeProjects/coolApp/venv/bin/activate
プロジェクトをセットアップするときに、プロジェクトを次のように変更しました
/User/me/CodeProjects/v1-coolApp/
か何か。その後、開く必要があります
/User/me/CodeProjects/v1-coolApp/venv/bin/activate
それが言う行を見つけます
VIRTUAL_ENV="/User/me/CodeProjects/coolApp"
export VIRTUAL_ENV
そしてそれをに変更します
VIRTUAL_ENV="/User/me/CodeProjects/v1-coolApp"
再開する前に
私は同じ問題を抱えていましたが、次のようにうまくいきました。入力するよりも、プロジェクトのメインフォルダーをナビゲートする必要があります。
source bin/activate
私は同じ問題を抱えていましたが、このメッセージが表示された理由は、「python manage.py runserver」を実行しているときに「manage.py runserver」を実行していたためでした。
サーバーを実行する前に、まずプロジェクトを選択する必要があります。
workon your_project_name
次に
、これを入力しますpython manage.py runserver
ファイルとディレクトリの所有権の競合により、ここで問題が発生します。プロジェクトの下のディレクトリとファイルの所有権が現在のユーザーにあることを確認してください。( -R オプションを指定した chown コマンドを使用して変更できます。) コマンドを再実行してみてください。これにより、「最初の Django アプリ」サンプルを実行したときに問題が解決しました。
python manage.py startapp polls