ModuleNotFoundError: Нет модуля с именем " "

Вот контекст: Я работаю над Django. Я начал кодить функции, но остановился, чтобы создать первые юнит-тесты.

Я хотел протестировать свой класс CustomUser, расположенный в JoBooking.models.py в файле test_models.py. JoBooking - это приложение, которое я создал в своем проекте Django.

Так что я сделал импорт из JoParis.JoBookings.models import CustomUser.

Когда я запускаю python manage.py test или pytest в терминале, я сталкиваюсь с этой ошибкой: ModuleNotFoundError: No module named 'JoParis.JoBooking'

Я настроил приложение (JoBooking) в settings.py... но ничего не работает.

Файлы init.py присутствуют в пакетах.

Я сделал простой тест, чтобы проверить, возвращает ли URL моего приложения ответ HTTP 200, и тест работает, но я должен удалить импорт из JoParis.JoBookings.models import CustomUser. Таким образом, тестовый файл найден, но проблема возникает из-за импорта, когда я хочу протестировать свои модели.

Я застрял. Я не могу понять эту ошибку. ModuleNotFoundError: No module named Просто объясните мне, пожалуйста, что это за ошибка. Спасибо

Общий ответ :-

Попробуйте, как показано ниже.

from JoBookings.models import CustomUser 

Для импорта из других скриптов следует использовать относительные пути. В JoParis.JoBookings.models

JoParis - это имя папки/имя проекта

JoBookings - это название приложения / название папки приложения (внутри папки проекта)

models - это имя файла python (внутри папки app).

Все они относятся к текущему файлу (оператору импорта).

Итак, для импорта, как описано выше, JoParis должен быть вложенным каталогом текущего тестового сценария.

Узнал новую информацию о проблеме :-

Для расположения C:\Users\murhe\PycharmProjects\StudiProject\JoParis\JoBooking\tests\test_models.py попробуйте сделать так, как показано ниже.

from ...JoBookings.models import CustomUser 

Дополнительная информация :-

ссылка 1

ссылка 2

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