migrate¶
Применение миграций схемы БД (стандартная команда Django)
Зачем нужна¶
Команда применяет к БД ожидающие миграции — изменения структуры таблиц, индексы, добавление/удаление полей. Без свежих миграций сервер новой версии не работает корректно. Обычно команда вызывается автоматически инсталлятором; ручной запуск нужен при нестандартных сценариях
Типичные случаи применения:
ручной запуск миграций после восстановления базы из старого backup при работающем новом сервере
применение миграций отдельного приложения после ручного вмешательства в БД
--plan— посмотреть, какие миграции будут применены, без записи (аудит перед обновлением)откат миграций приложения до конкретной (например, при откате версии сервера)
Важно
Перед запуском обязательно сделайте резервную копию базы. Откат миграций может быть невозможен или приведёт к потере данных, добавленных после применения новой схемы
Синтаксис¶
rude migrate [--noinput] [--database {default}] [--fake] [--fake-initial] [--plan] [--run-syncdb] [--check] [--prune] [app_label] [migration_name]
Примечание
Применяет ожидающие миграции к базе данных. Без параметров мигрирует все приложения. Используется при обновлении сервера и установке. Полную документацию см. в Django docs
Примеры¶
Применить все миграции:
rude migrate
Применить миграции конкретного приложения:
rude migrate account
Откатить миграции приложения до определённой:
rude migrate account 0010_some_migration
Служебная команда сервера, обычно вызывается автоматически при установке/обновлении