Что означает .models на языке djagno?
Я пытаюсь импортировать класс с именем 'Questions' из моего models.py в admin.py
from .models import Questions
Я не понимаю, почему мы должны использовать точку в '.models', что она означает и на что именно указывает?
Я пробовал эти комбинации, но безрезультатно
from models import Questions
from Model.models import Questions
Это связано с относительным импортом. Вы видите, что существует 2 типа оператора импорта:
Абсолютный импорт: они начинаются с корня проекта. Например, в Django, где находится manage.py, это и есть корень. Таким образом, ваш оператор импорта может быть записан как
.from {AppName}.models import Questions
Но здесь вы используете относительный путь. Относительный, потому что вы начинаете с текущего каталога, в котором находитесь, а не с корневого. Поэтому в
.models
.
фактически означает текущий каталог. Вы не можете использоватьmodels
, потому что в корневом каталоге нет моделей.
Для получения более подробной информации попробуйте следующее Импорты Python
Это относительный импорт. Это означает вернуться на один уровень назад в дереве папок и импортировать models
.
Это:
from .models import Questions
это то же самое, что и это:
from my_folder_containing_models.models import Questions