Какими способами можно проверить корректность работы миграций в Django-проекте?
Answer from AI
sobes.tech AI
Для проверки корректности миграций в Django можно использовать несколько подходов:
-
Команда
makemigrations --check— проверяет, есть ли несохранённые изменения в моделях, которые не отражены в миграциях. -
Применение миграций на тестовой базе данных — запуск
migrateна отдельной базе (например, в тестовом окружении) позволяет убедиться, что миграции применяются без ошибок. -
Тесты с использованием
TransactionTestCase— можно написать тесты, которые проверяют, что структура базы соответствует ожиданиям после миграций. -
Просмотр состояния миграций через
showmigrations— позволяет увидеть, какие миграции применены, а какие нет. -
Использование
migrate --plan— показывает план миграций без их применения, помогает понять, что будет изменено.
Пример проверки миграций в CI:
python manage.py makemigrations --check
python manage.py migrate --database=test