1. ホーム
  2. python

[解決済み】django インポートエラー - core.managementという名前のモジュールがない

2022-01-17 05:03:29

質問

OK、このようなエラーはたくさん見かけます。知っていることをすべて試してみましたが、まだ解決していません。

私は python 2.5 と Django 1.3 が動作する開発サーバーで作業しています。Django 1.3 は tar.gz を解凍した後、 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

OK、では、私は PATH の問題があります。

から Djangoのインストール をダブルチェックしています。 site-packages ディレクトリを作成します。

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

OK、私が持っているものをチェックしてみましょう、echo $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エラーが発生しました。

サイドノードです。Unode from #django helped a bit, set up virtualenv on same machine and got past the errors so still not sure what is up with this actual install here, but seems to be in the django projects but the django/python install in the same machine, but it is not in the same machine.

解決方法は?

周知の通り、これはパスの問題でした。

私のカスタムパッケージのベースは、/etc/profileで設定されたディレクトリと名前を共有していました。しかし、パッケージはウェブサーバでは別の場所にありました。そこで、$PYTHONPATHから問題のあるエントリを削除したら、うまくいきました!

ありがとうございました。