我创建了自己的具有目录结构的Django应用程序
/appname
__init__.py
models.py
/submodule1
__init__.py
a.py在a.py中,我有以下导入
from ..models import Something如果我在我的/djangoproject文件夹中有/appname,这可以正常工作,但是当我将应用安装到Python的站点包中(通过我创建的setup.py )时,所有的地狱都崩溃了,a.py不能再导入Something,并出现以下错误:
ImportError: cannot import name Something下面是setup.py:
from distutils.core import setup
setup(name='appname',
version='0.1',
packages=['appname', 'appname.contrib'],
)发布于 2011-08-19 10:32:31
事实证明,这是一个循环导入错误。models.py正在导入a.py,而a.py正在导入models.py。
打破这个圈子解决了导入问题,但现在是时候弄清楚如何在Python中进行延迟计算了:-)
发布于 2011-08-18 16:07:04
将名为:__init__.py的空文件放入/submodule1中,以便Python可以将其解析为模块。这应该会有帮助。在/appname中也是如此--还应该有__init__.py文件
https://stackoverflow.com/questions/7102852
复制相似问题