web-dev-qa-db-ja.com

djangoのインポートエラー - core.managementという名前のモジュールはありません

わかりました、私はたくさんのこれらの間違いを見ます。私は私がすることを知っているすべてを試してみました、そしてまだこれを理解していません。

私はpython 2.5とDjango 1.3を実行している開発サーバーに取り組んでいます。 tarjzのダウンロードを解凍した後、Django 1.3はpython setup.py installを使ってインストールされました。

manage.pyを実行する必要はめったにありませんが、新しいstaticfilesアプリを使用しようとしていて問題が発生しています。

python manage.py collectstatic
Traceback (most recent call last):
  File "manage.py", line 2, in <module>
    from Django.core.management import execute_manager
ImportError: No module named core.management

わかりました、それで私はPATH問題を抱えています。

Djangoインストール からsite-packagesディレクトリを二重チェックします。

python -c "from distutils.sysconfig import get_python_lib; print get_python_lib()"
/usr/lib/python2.5/site-packages

さて、私が持っているものをチェックしよう、エコー$ PYTHON_PATHが空だったので、私はそれを設定した

export PYTHON_PATH=/usr/lib/python2.5/site-packages/Django

まだ運がありません。 sys.pathが何を言っているのかを確認しましょう。

>>> import sys
>>> print sys.path
['', '/usr/lib/python2.5', '/usr/lib/python2.5/plat-linux2', '/usr/lib/python2.5/lib-tk', '/usr/lib/python2.5/lib-dynload', '/usr/local/lib/python2.5/site-packages', '/usr/lib/python2.5/site-packages', '/usr/lib/python2.5/site-packages/PIL', '/usr/lib/python2.5/site-packages/Django', '/var/lib/python-support/python2.5']

パスはそこにあります、私もコンテンツで/usr/lib/python2.5/site-packages/Django.pthを作成しました

cat /usr/lib/python2.5/site-packages/Django.pth 
/usr/lib/python2.5/site-packages/Django/

誰がここで何が起こっているのかについての手がかりを得ましたか?

私は邪魔になっていた道をさらに上のシンボリックリンクを見つけました、しかし、新しいエラーには続きません。

python manage.py collectstatic
Traceback (most recent call last):
  File "manage.py", line 14, in <module>
    execute_manager(settings)
  File "/usr/lib/python2.5/site-packages/Django/core/management/__init__.py", line 438, in execute_manager
    utility.execute()
  File "/usr/lib/python2.5/site-packages/Django/core/management/__init__.py", line 349, in execute
    version=get_version(),
  File "/usr/lib/python2.5/site-packages/Django/__init__.py", line 12, in get_version
    from Django.utils.version import get_svn_revision
ImportError: No module named utils.version

私はまたそこに何か問題があるかどうかを確認し、同じutils.versionエラーを得るために新しいプロジェクトを作成しようとしました。

サイドノード:#DjangoのUnodeが私を少し助けてくれ、同じマシン上でvirtualenvをセットアップしてエラーを乗り越えたのでまだここでこの実際のインストールで何が起きているのかわからないが、それはDjangoプロジェクトではなくDjangoにはないようです/ pythonのインストール.

178
grantk

知られているように、これはパスの問題でした。

私のカスタムパッケージのベースは、/ etc/profileに設定されたディレクトリと名前を共有していました。パッケージはWebサーバーとは異なる場所にありました。だから私は私の$ PYTHONPATHから問題のあるエントリを削除し、行ってよかったです!

助けてくれてありがとう。

10
grantk

もし私と同じように、あなたがあなたのDjangoをvirtualenvで走らせていて、このエラーが出たら、あなたのmanage.pyを見てください。最初の行はスクリプトを実行するために使用されるpython実行可能ファイルを定義するべきです。これはあなたのvirtualenvのpythonへのパスであるべきです、しかしそれは同じパスではなく、そしてグローバルなpython環境を使うでしょう(そしてパッケージは失われるでしょう)/ usr/bin/pythonのような間違った何か。パスをvirtualenvのpython実行可能ファイルへのパスに変更するだけです。

Shebangの行を#!/usr/bin/env pythonに置き換えることもできます。これはあなたが最初にあなたのvirtualenvを起動するという条件で適切なpython環境とインタプリタを使うべきです(私はあなたがこれをする方法を知っていると思います)。

160
Steve K

あなたがvirtualenvにいるなら、あなたはあなたが./manage.py 'command'を実行することができる前にそれをアクティブにする必要があります。

source path/to/your/virtualenv/bin/activate

workonを.bash_profileまたは.bashrcに設定した場合

workon yourvirtualenvname

* manage.pyファイルを編集しないでください。おそらく正しい方法では動作せず、今後のエラーが発生する可能性があります。

39
elin3t

私はDjangoをスーパーユーザーとしてインストールしていたので、私は同じ問題を抱えていました。 Sudo pip install Djangoをしてはいけません

代わりに、このようにインストールしてください。

$ source ./bin/activate
$ pip install Django
29
aviggiano

Pjを付けてDjangoを再インストールしてください。

Sudo pip install --upgrade Django==1.3

(1.3をあなたのDjangoバージョンに置き換えてください)

14
satels

この問題について考えられるもう1つの理由は、OSがデフォルトでpython3を実行していることです。

python2 manage.pyのどちらかを明示的に行います。

または、Shebang of manage.pyを次のように編集します。

#!/usr/bin/env python2
9
nuts

Raspberry Pi 2(そしてnot a VMに組み込みシステムを(もちろんDjangoを使って)実行しようとしているときにこのエラーが発生しました)

これを実行する:

 Sudo pip install Django

トリックをしました!

  • 念のためにRaspbian/Jessieを使っている仲間がこれを得ます
7
d1jhoni1b

あなたはおそらくvirtualenvwrapperを使っています。実行して環境を選択することを忘れないでください。

$ workon env_name
5
M K

新しいアプリを作成しようとしたときに同じ問題が発生していました。 python manage.py startapp myappを書くと、usr/bin/pythonを探します。しかし、この "python"はあなたの/ binディレクトリvirtual env pathにあります。私はこのようにvirtualenvのPythonパスを言及することでこれを解決しました:

<env path>/bin/python manage.py startapp myapp
4
Tarique

私にとって、私のサーバーはPython 2.4を使用していました。私は単純に私のサーバーにインストールされているPython 2.7を調べ、そしてエイリアスを作成しました。

alias python=python2.7

あなたがもっと知る必要があるならば、私は解決策を見つけました ここで

4
el_stack

Manage.pyの最初の行を変更してみてください。

変化する

#!/usr/bin/python

によって

#!/usr/bin/env python
3

それを解決しました!!!

agesを検索して、うまくいかなかったこれらの他のすべての提案を試した後、私はようやく私の設定の解決策を見つけました。

私の設定/シナリオ:

  • ウィンドウズ、パイソン27
  • 私のDjangoプロジェクトはsvn経由でチェックアウトされています
  • 新しいフォルダでpython manage.py runserverを実行すると、インポートエラーが発生しました
  • python manage.py runserverは元のフォルダ(変更をコミットする場所)で削除されるまで動作していました

解決策

manage.pyと同じディレクトリにあるDjangoという名前のフォルダをすべて削除します。

そうだね……__ init __。pyファイルしか含まれていなかったフォルダ "Django"を削除したらすぐにまたサーバを起動できた。

なぜか分からない

3
Dan
python3 manage.py runserver

Pythonのバージョンを確認する

2
user1464878

Pythonのpythonパスを変数に格納して実行します。そうでなければ欠けているパッケージが含まれます。

python_path= `which python` 
$python_path manage.py runserver
2
Nischay Gulati

Django 1.6以降を使っている人は、 execute_managerは削除されました に注意してください。 2番目のSO answer ここ に投稿された解決策があります。

2
Owen

#PATH = "$ VIRTUAL_ENV/bin:$ PATH"をPATH = "$ PATH:$ VIRTUAL_ENV/bin"に変更することで、この問題を解決しました。インストールされたpythonは行います。

1
Lowlysquib

私は同様の問題を抱えていました。 PyCharmはサーバーを実行できませんでしたが、コマンドラインから実行できました。私はどのpythonを試してみて、そしてPyCharmが同じインタプリタであることを確認してから、すべてがうまくいった。

1
Trip Denton

このエラーは通常Djangoがインストールされていないときに起こります。 Djangoを既にインストールしているのに同じエラーが出る場合は、別の仮想環境で作業している必要があります。仮想環境にもDjangoをインストールする必要があります。あなたが仮想マシンのシェルにいるとき、単にこれをしてください:

ピップインストールDjango

それは仮想マシンが別のファイルシステムを持っているからです、それはあなたのシステムにインストールされていてもDjangoを認識しません。

1
Rai Ammad Khan

================================== SOLUTION =============== ==========================

最初のgoto:virtualenv

次のコマンドを実行して:source bin/activate

「_Djangoのインポート」に関連するエラーが発生しているため、Djangoをインストールします。

pip install Django

次に、実行します:python manage.py runserver

(注:「runserver」を実行するプログラム名に変更してください)

同じ問題については、私の場合はうまくいきました。 ==================================概要=============== ==========================エラー:(開発)Rakeshs-MacBook-Pro:src rakesh $ python manage.py runserverトレースバック(最新の最後の呼び出し):ファイル「manage.py」、8行目、Django.core.managementからimport import execute_from_command_line ModuleNotFoundError: 'Django'という名前のモジュールはありません

上記の例外の処理中に、別の例外が発生しました。

トレースバック(最後の最後の呼び出し):ファイル「manage.py」、行14、インポートDjango ModuleNotFoundError: 'Django'という名前のモジュールはありません

上記の例外の処理中に、別の例外が発生しました。

トレースバック(最後の最後の呼び出し):ファイル「manage.py」、17行目「Djangoをインポートできませんでした。インストールされていることを確認し、インポートエラー:Djangoをインポートできませんでした。 PYTHONPATH環境変数にインストールされており、利用可能であると確信していますか?仮想環境をアクティブにするのを忘れましたか? (開発)Rakeshs-MacBook-Pro:src rakesh $(開発)Rakeshs-MacBook-Pro:src rakesh $(開発)Rakeshs-MacBook-Pro:src rakesh $ python -Wall manage.py test Traceback (最後の最後の呼び出し):ファイル「manage.py」、8行目、Django.core.managementからimport import execute_from_command_line ModuleNotFoundError: 'Django'という名前のモジュールはありません

上記の例外の処理中に、別の例外が発生しました。

トレースバック(最後の最後の呼び出し):ファイル「manage.py」、行14、インポートDjango ModuleNotFoundError: 'Django'という名前のモジュールはありません

上記の例外の処理中に、別の例外が発生しました。

トレースバック(最後の最後の呼び出し):ファイル「manage.py」、17行目「Djangoをインポートできませんでした。インストールされていることを確認し、インポートエラー:Djangoをインポートできませんでした。 PYTHONPATH環境変数にインストールされており、利用可能であると確信していますか?仮想環境をアクティブにするのを忘れましたか?

Djangoのインストール後:

(開発)MacBook-Pro:src rakesh $ pip install Django Collecting Django Downloading https://files.pythonhosted.org/packages/51/1a/e0ac7886c7123a03814178d7517dc822af0fe51a72e1a6bff26153103/322 Django-2.1-py3-none-any.whl (7.3MB)100%|███████████████████████████████ ███| 7.3MB 1.1MB/s pytzの収集(Djangoから)ダウンロード https://files.pythonhosted.org/packages/30/4e/27c34b62430286c6d59177a0842ed90dc789ce5d1ed740887653b898779a/pytz-2018.5-py2.py3-none-any.whl =(510kB)100%|█████████████████████████████████|| 512kB 4.7MB/s収集されたパッケージのインストール:pytz、Django

解決後:

(開発)MacBook-Pro:src rakesh $ python manage.py runserverシステムチェックを実行しています...

システムチェックで問題は特定されませんでした(0が無音)。

15個の未適用の移行があります。アプリ、アプリケーション、管理者、認証、コンテンツタイプ、セッションの移行を適用するまで、プロジェクトは正常に動作しない可能性があります。 'python manage.py migrate'を実行してそれらを適用します。

2018年8月5日-04:39:02 Djangoバージョン2.1、設定 'trydjango.settings'を使用 http://127.0.0.1:8000/ で開発サーバーを開始CONTROL-Cを備えたサーバー。 [05/Aug/2018 04:39:15] "GET/HTTP/1.1" 200 16348 [05/Aug/2018 04:39:15] "GET /static/admin/css/fonts.css HTTP/1.1" 200 423 [05/Aug/2018 04:39:15] "GET /static/admin/fonts/Roboto-Bold-webfont.woff HTTP/1.1" 200 82564 [05/Aug/2018 04:39:15] "GET/static/admin/fonts/Roboto-Light-webfont.woff HTTP/1.1 "200 81348 [05/Aug/2018 04:39:15]" GET /static/admin/fonts/Roboto-Regular-webfont.woff HTTP/1.1 "200 80304見つかりません:/favicon.ico [05/Aug/2018 04:39:16]" GET /favicon.ico HTTP/1.1 "404 1976

がんばろう!!

1
rakesh

Djangoをpip -Uを使用してインストールしたことを忘れたため、これを取得しました。したがって、Djangoアプリを実行しているユーザーのみが使用できました。 manage.pyを実行するには、私がしなければなりませんでした

Sudo su -s /bin/bash MY_Django_USER
/PATH/TO/MY/APP/manage.py
0
EM0

Startappコマンドを発行する前に、settings.pyのINSTALLED_APPSリストに新しいアプリケーションの名前を含めました。リストのエントリを削除したら、アプリを作成できます。

0
Milad M

siteというアプリケーションを使用すると、この問題を再現できます。

あなたのプロジェクトはDjango1.3より古いDjango-admin.pyの古いバージョンを使って作成されています。

これを修正するには別のDjangoプロジェクトを作成し、そのmanage.pyをコピーして古いものに貼り付けます

0
MBarsi

私は代わりに以下のように 'Django-admin'コマンドを使用してこの問題を解決しました:

Django-admin startproject _project_name

「Django-admin」に添付されている「.py」を削除するだけです。

0
M Haziq

これはパスの問題であることに完全に同意しましたが、しかし、私はこれと同じエラーがありました。私の仮想環境を設定するときに、私のPython実行ファイルに相対パスを使用するのが間違っていたためです。私はこれをしました:

virtualenv -p ~/python_runtimes/2.7.3/bin/python venv2.7.3 --distribute

代わりに、私はPython実行ファイルへのフルパスを与えなければなりませんでした。

HTH、ハーリン

0
Harlin

source〜/ blog-venv/bin/activate

ここで "blog-venv"を置き換えるためにあなたのvirtualenvを選んでください。

0
windmaomao

さてそれでそれはこのようになります:

仮想環境を作成し、Djangoモジュールはその環境にのみ属しています。virtualenvは他のすべてのものから自分自身を分離しているので、これを見ています。

さらなる支援のためにこれを通過してください。

http://www.swegler.com/becky/blog/2011/08/27/python-Django-mysql-on-windows-7-part-i-getting-started/

1.仮想環境が保存されているディレクトリに移動してからDjangoモジュールを実行します。

2.あるいは、pipまたはeasy_installを実行してDjangoをあなたのpython-> site-packagesにグローバルにインストールすることもできます。

Pipを使用したコマンド:pip install Django

その後これを行います。

import Django print(Django.get_version())(あなたが使っているPythonのバージョンによって異なります。Python3+シリーズではこちら)

それから、python manage.py runserverを実行して、次のように入力してWebブラウザを確認します。localhost:8000を入力すると、Djangoによるページが表示されます。

お役に立てれば。

0
Ashish

パス上の正しいディレクトリでPythonの正しいインスタンスを実行していることを確認してください。私の場合、このエラーは偶然にpython実行ファイルを実行したことが原因でした - 私は実際にpython2.7フレームワークとライブラリの下にDjangoをインストールしました。同じことがvirtualenvの結果としても起こり得ます。

0
Chris Johnson