django 1.4,python 2.6.6。
我有一個應用程序「工作」。
我的文件樹:「ImportError:No module named jobs.models」with relative path
djproject/
|-- djproject
| |-- db
| | `-- tdata.db
| |-- __init__.py
| |-- __init__.pyc
| |-- jobs
| | |-- admin.py
| | |-- admin.pyc
| | |-- __init__.py
| | |-- __init__.pyc
| | |-- models.py
| | |-- models.pyc
| | |-- tests.py
| | `-- views.py
| |-- settings.py
| |-- settings.pyc
| |-- urls.py
| |-- urls.pyc
| |-- wsgi.py
| `-- wsgi.pyc
`-- manage.py
我manage.py文件:
#!/usr/bin/env python
import os
import sys
if __name__ == "__main__":
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "djproject.settings")
from django.core.management import execute_from_command_line
execute_from_command_line(sys.argv)
然後我運行 「蟒蛇manage.py殼」,其中與文件 「manage.py」 同一級別的文件夾。
然後我輸入「from jobs.models import Job」。
錯誤如下(相對路徑):
>>> from jobs.models import Job
Traceback (most recent call last):
File "<console>", line 1, in <module>
ImportError: No module named jobs.models
,但是,如果我用全路徑
>>> from djproject.jobs.models import Job
錯誤disapear,爲什麼呢?
但文件夾樹由「django-admin.py startproject djporject」生成。 –
確實如此,只是'manage.py'的位置發生了變化,這意味着在導入模塊時需要包含項目名稱。 –
新錯誤。我以爲我已經用「mv」作業文件夾解決了這個問題。但我得到錯誤:錯誤:沒有模塊命名作業,當我鍵入「python manage.py shell」,爲什麼? –