2013-02-11 104 views
0

我试图建立我的第一个django项目。在该项目中,我创建了一个名为“域”的包。在包的“域”中,有一个名为“实体”的文件夹。在'entities'文件夹中,有一个名为'foo.py'的文件,其中包含一个名为'Foo'的类。django:没有名为entities.foo的模块

我试图将类'Foo'导入到另一个文件(模块?)我已经尝试了几乎所有我能想到的排列方式。当我尝试这样做时:

from domain.entities.foo import Foo 

Eclipse停止突出显示Foo类的未知状态。它似乎很满意。但是,当我看网页在浏览器中,我得到一个错误的屏幕:

Import Error at /[URL] 
No module named entities.foo 

谁能帮助?我完全没有想法。

回答

3

您当然在每个文件夹(包)上没有__init__.py空文件。如果您使用Python 2.X,则需要它。

domain 
|---- __init__.py 
|---- entities 
|  |---- foo.py 
|  |---- __init__.py 

之后,你就可以导入模块domain.entities.foo

from domain.entities.foo import Foo 
+0

是内部的类Foo,“实体”是一个文件夹,而不是一个包。但是,我不知道包是什么。 – David 2013-02-11 15:43:51

+2

包是一个包含'__init __。py'空文件(Python 2.x)的文件夹。更多信息在这里:http://docs.python.org/2/tutorial/modules.html#packages – 2013-02-11 15:45:48

相关问题