Как объединить несколько миграций django south в одну миграцию
мы используем юг для управления миграциями в течение длительного времени, и теперь у нас есть около 100 миграций.
Это вызвало много времени python manage.py migrate
на свежем db.
Мне интересно, могу ли я объединить все существующие миграции в одну миграцию
2 ответов
Это было решено в Django 1.7 + есть новая команда управления ./manage.py squashmigrations appname, проверьте эту ссылку - https://docs.djangoproject.com/en/1.7/topics/migrations/#squashing-migrations
можно использовать squashmigrations
команда управления, чтобы добраться туда. Он оставит старые файлы миграции на месте, но использует раздавленную версию при установке чего-то нового.
пример:
./manage.py squashmigrations core 0003_auto
посмотреть официальные документы
если вы хотите избавиться от всех проб и ошибок отходов, производимых во время разработки, удалите миграции из ваших приложений migrations
каталог вместе со всеми упоминаниями вашего приложения в таблице SQL django_migrations
и приложения фактические таблицы базы данных.
после запуска ./manage.py makemigrations
и вы хорошо пошли. Это не рекомендуется для приложений, которые уже находятся в производственных целях.