导入错误:没有名为 books.models 的模块
我正在通过认真阅读这本书来学习Django,现在我已经到了第五章:模型。在交互式控制台里,一切都运行得很好,直到我看到基本数据访问的部分。
epqrs@epqrs:~/webapps/djcode/mysite$ pwd
/home/epqrs/webapps/djcode/mysite
epqrs@epqrs:~/webapps/djcode/mysite$ python ../manage.py shell
Python 2.7.3 (default, Sep 26 2012, 21:51:14)
[GCC 4.7.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
(InteractiveConsole)
>>> from books.models import Publisher
Traceback (most recent call last):
File "<console>", line 1, in <module>
ImportError: No module named books.models
>>> import sys
>>> sys.path
['/home/epqrs/webapps/djcode', '/usr/lib/python2.7', '/usr/lib/python2.7/plat-linux2', '/usr/lib/python2.7/lib-tk', '/usr/lib/python2.7/lib-old', '/usr/lib/python2.7/lib-dynload', '/usr/local/lib/python2.7/dist-packages', '/usr/lib/python2.7/dist-packages', '/usr/lib/python2.7/dist-packages/PIL', '/usr/lib/python2.7/dist-packages/gst-0.10', '/usr/lib/python2.7/dist-packages/gtk-2.0', '/usr/lib/python2.7/dist-packages/ubuntu-sso-client', '/usr/lib/python2.7/dist-packages/ubuntuone-client', '/usr/lib/python2.7/dist-packages/ubuntuone-control-panel', '/usr/lib/python2.7/dist-packages/ubuntuone-couch', '/usr/lib/python2.7/dist-packages/ubuntuone-storage-protocol']
>>>
我不明白为什么会出现ImportError: No module named books.models的错误。
books这个文件夹在我当前的目录mysite下面(路径是/home/epqrs/webapps/djcode/mysite/books)。
2 个回答
1
我需要做
from mysite.books.models import Publisher
才能让它正常工作。
13
我把它改成了这样:
from books.models import Publisher, Author, Book
简单来说,我把 mysite
这一部分去掉了。
另外,把安装的应用从 'mysite.books'
改成了只用 'books'
希望这能帮到你