Не удается запустить тесты django. django.db.utils.Ошибка программирования: отношение "auth_user" не существует

Я пишу тесты. При попытке запустить его, он возвращает ошибку "django.db.utils.Ошибка программирования: отношение "auth_user" не существует". Я запускаю проект локально, используя виртуальную среду. В логах pgadmin есть похожая ошибка. Эта ошибка также возникает при запуске проекта в docker. Я проверил миграции. Я перепробовал все варианты из Интернета и GPT. Я буду очень благодарен вам за помощь.

✅ Исправление для: django.db.utils.ProgrammingError: relation "auth_user" does not exist

Эта ошибка означает, что таблица auth_user (из встроенной системы аутентификации Django) не была создана в вашей базе данных PostgreSQL.

✅ Шаги по быстрому исправлению:

  1. Проверьте настройки базы данных в settings.py:
python

Скопировано отредактировано

БАЗЫ ДАННЫХ = { 'default': { 'ENGINE': 'django.db.backends.postgresql', 'NAME': 'your_db_name', 'USER': 'your_db_user', 'PASSWORD': 'your_password', 'HOST': 'localhost', # or 'db' if using Docker 'PORT': '5432', } }

  1. Запуск миграций:
bash

Скопировано отредактировано

python manage.py внесение изменений в python manage.py перенос аутентификации на python manage.py перенос

  1. Используете Docker?
    База данных может быть не готова к запуску Django — используйте сценарий ожидания:
bash

Скопировано отредактировано

./wait-for-it.sh db:5432 -- python manage.py перенести

Или добавьте проверку работоспособности в docker-compose.yml.

  1. Используя пользовательскую модель пользователя?
    Проверьте это в settings.py:
python

Скопировано отредактировано

AUTH_USER_MODEL АУТЕНТИФИКАЦИЯ ПОЛЬЗОВАТЕЛЯ = 'yourapp.YourCustomUser'

Убедитесь, что его перенос был создан и применен.

  1. Все еще терпишь неудачу?
    В psql или в pgAdmin:
sql

Скопировано отредактировано

ВЫБЕРИТЕ* FROM django_migrations WHERE app = 'auth';

Если строк нет, перенос auth никогда не выполнялся.

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