如何从 Django 项目中的一个目录导入一些东西?
How to import something from one directory above in a Django project?
在我的 Django 项目中,我有拆分模型。项目目录有点像这样:
myproject/
app1/
validators.py
views.py
__init__.py
models/
__init__.py
model1.py
model2.py
当然,由于以下原因,模型可以正常工作:
#myproject/app1/models/__init__.py:
from .model1 import Model1
from .model2 import Model2
无论如何,在我的 model1.py
模块中,我想从 validators.py
模块导入一个验证器。但是正如您所看到的,它在上面的一个目录。我怎样才能做到这一点?最好,我想要一个适用于所有类型文件系统的解决方案。感谢您的任何回答。
你可以在这里使用两个连续的点,比如:
# myproject/app1/models/__init__.py
from .model1 import Model1
from .model2 import Model2
from <b>..</b>validators import SomeValidator
但也许在这里使用绝对导入会更好:
# myproject/app1/models/__init__.py
from .model1 import Model1
from .model2 import Model2
from <b>app1.</b>validators import SomeValidator
在我的 Django 项目中,我有拆分模型。项目目录有点像这样:
myproject/
app1/
validators.py
views.py
__init__.py
models/
__init__.py
model1.py
model2.py
当然,由于以下原因,模型可以正常工作:
#myproject/app1/models/__init__.py:
from .model1 import Model1
from .model2 import Model2
无论如何,在我的 model1.py
模块中,我想从 validators.py
模块导入一个验证器。但是正如您所看到的,它在上面的一个目录。我怎样才能做到这一点?最好,我想要一个适用于所有类型文件系统的解决方案。感谢您的任何回答。
你可以在这里使用两个连续的点,比如:
# myproject/app1/models/__init__.py
from .model1 import Model1
from .model2 import Model2
from <b>..</b>validators import SomeValidator
但也许在这里使用绝对导入会更好:
# myproject/app1/models/__init__.py
from .model1 import Model1
from .model2 import Model2
from <b>app1.</b>validators import SomeValidator