无法在django中将类从一个应用程序导入另一个应用程序

时间:2017-01-31 07:11:34

标签: python django python-import importerror

我正在尝试从另一个Django应用程序中的一个Django应用程序导入一个类。

mainProjectFolder
|--__init__.py
|--manage.py
|--app1
    |--__init__.py
    |--class1.py
|--app2
    |--__init__.py
    |--anotherClass.py
|--mainProjectFolder
    |--__init__.py
    |--settings.py
    ...

app2.anotherClass.py,我正在做:

from mainProjectFolder.app1.class1 import Class1

我收到以下错误:

ImportError: No module named 'mainProjectFolder.app1'

我已在INSTALLED_APPS文件的settings.py中注册了我的应用。

如果有任何不清楚的地方,请告诉我,我会编辑所需的。

1 个答案:

答案 0 :(得分:4)

您不需要包含要导入的项目名称。 如果您在项目文件夹中拥有相同级别的层次结构中的所有应用程序,则只需通过其应用程序调用这些文件。

只需使用:

 from app1.class1 import Class1

 from app2.anotherClass import Class2

关于错误:

'unresolved references app1'

将包含应用的项目文件夹用作源根,然后该应用就会被识别。