我试图从我的www.example.com导入一个名为“Questions”的类models.py到admin.py from .models import Questions我不明白为什么我们必须在“. models”中使用句点,它是什么意思,它到底指向什么?我尝试了这个组合,但它是无效的from models import Questionsfrom Model.models import Questions
from .models import Questions
from models import Questions
from Model.models import Questions
iibxawm41#
这是由于相对导入造成的。您可以看到它们有两种类型的导入语句:1.绝对导入:它们从项目的根目录开始.就像在Django中,manage.py是根目录.所以你的import语句可以写成from {AppName}.models import Questions1.但是这里你使用的是相对路径。相对是因为你从你所在的当前目录而不是根目录开始。所以在.models中.实际上意味着当前目录。你不能使用models,因为根目录中没有模型。有关更深入的详细信息,请尝试此Python imports
from {AppName}.models import Questions
.models
.
models
3wabscal2#
这是一个相对导入。它意味着返回到文件夹树的上一级并导入models。这一点:
与以下内容相同:
from my_folder_containing_models.models import Questions
2条答案
按热度按时间iibxawm41#
这是由于相对导入造成的。您可以看到它们有两种类型的导入语句:
1.绝对导入:它们从项目的根目录开始.就像在Django中,manage.py是根目录.所以你的import语句可以写成
from {AppName}.models import Questions
1.但是这里你使用的是相对路径。相对是因为你从你所在的当前目录而不是根目录开始。所以在
.models
中.
实际上意味着当前目录。你不能使用models
,因为根目录中没有模型。有关更深入的详细信息,请尝试此Python imports
3wabscal2#
这是一个相对导入。它意味着返回到文件夹树的上一级并导入
models
。这一点:
与以下内容相同: