Django и mypy с приложениями во вложенной папке

У нас есть проект Django со следующей настройкой:

У нас есть наши приложения в папке apps. Мы добавили все эти приложения в путь python на уровне settings.py.

Затем мы можем ссылаться и импортировать эти приложения следующим образом:

from apps.booking.models import Booking
# or
from booking.models import Booking

Теперь мы хотим использовать mypy для проверки типов.

Проблема в том, что mypy не распознает импорт from booking.models import Booking и жалуется на отсутствие заглушек для этого модуля. Это делает типизацию очень ненадежной и не очень полезной, поскольку Booking в этом случае набирается как Any. Однако с импортом в следующем виде from apps.booking.models import Booking

работает нормально.

Есть ли способ заставить mypy понимать путь без префикса apps.?

Я пытался использовать mypy_path = $MYPY_CONFIG_FILE_DIR/apps в mypy.ini, но безуспешно...

Я думаю, это из-за файла __init__.py. Добавили ли вы файл __init__.py в папку apps?

Вернуться на верх