Django migrate не запустил выполнить некоторые файлы миграции - PullRequest
0 голосов
/ 23 мая 2018

У меня есть база данных Postgres, полная данных.И я сделал несколько изменений в моих моделях приложений Django.make-миграции mange.py работали нормально и создали файлы миграции.Но управление manage.py выполнит только один файл.И когда я запускаю его снова, остальные не выполняются, как будто они уже применены.

Я удалил файлы миграции, которые не были применены, и сделал другую make-миграцию, но он говорит, что никаких изменений не обнаружено.

Есть идеи, как отразить изменения моделей в базе данных без потери данных?

Спасибо

1 Ответ

0 голосов
/ 23 мая 2018

Django отслеживает, какие миграции он уже применял, поэтому при запуске команды migrate он выполнит только те миграции, которые, по мнению Django, отсутствуют.

Я удалил файлы миграции, которые не были применены, и сделал другую make-миграцию, но она говорит, что никаких изменений не обнаружено.

Это была плохая идея, она сделает ваши миграции несовместимыми.

Если вы хотите вернуться назад во времени, вместо удаления миграций, правильный способ сделать это - отменить миграций.Вы можете использовать ту же команду migrate и указать, к какой точке миграции вы хотите добавить модель базы данных.

Проверьте этот ответ для получения дополнительной информации о возврате миграций; django отменить последнюю миграцию

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...