我是python和django的新手,所以我正在运行代码,我收到了一条错误消息:
File "/home/mbenchoufi/brisket/../brisket/views.py", line 11, in <module>
from influence.forms import SearchForm
ImportError: No module named forms
一个非常奇怪的事情是我在influence文件夹中有一个名为forms.py的文件,在这个文件中我有一个名为SearchForm的类。
这是print sys.path infos
['/home/mbenchoufi/brisket', '/home/mbenchoufi/src/ckanclient', '/home/mbenchoufi/src/vdm', '/home/mbenchoufi/brisket/src/mediasync', '/home/mbenchoufi/brisket/src/transparencydata', '/home/mbenchoufi/brisket/src/simplepay', '/home/mbenchoufi/brisket/src/feedinator', '/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-installer', '/usr/lib/python2.7/dist-packages/ubuntuone-storage-protocol']
['/home/mbenchoufi/brisket', '/home/mbenchoufi/src/ckanclient', '/home/mbenchoufi/src/vdm', '/home/mbenchoufi/brisket/src/mediasync', '/home/mbenchoufi/brisket/src/transparencydata', '/home/mbenchoufi/brisket/src/simplepay', '/home/mbenchoufi/brisket/src/feedinator', '/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-installer', '/usr/lib/python2.7/dist-packages/ubuntuone-storage-protocol']
答案 0 :(得分:0)
您应该尝试将PYTHONPATH ='/ path /导出到/ your / influence / folder'(或类似的东西,具体取决于您使用的shell)
在交互式ipython中尝试这些内容 - 如果你在那里工作,那么很容易让它在代码中运行。如果您是初学者,这通常是最好的方法。
答案 1 :(得分:0)
您的项目结构不符合Django 1.4 docs。您的manage.py文件应该高于设置和网址的一个级别。请检查一下。
答案 2 :(得分:0)
您必须确保influence
在您的sys.path中。
这样就可以导入influence
。
并且,在文件夹influence
中,必须一个名为__init__.py
的文件
将make influence
作为一个包。
在views.py中添加以下代码
import sys
influence_path = FIND_OUT_INFLUENCE_PATH
sys.path.append(influence_path)
from influence_path.foo import bar
...
当你在shell中导入时。如错误所示。
你必须设置DJANGO_SETTINGS_MODULE
,
如果你仍然困惑,
在shell中,cd你的项目路径,并运行tree
命令,
然后发布您的项目文件夹树