Отменить последнее аламбик миграции

Я создал миграцию с alembic revision --autogenerate, применил его к моей базе данных разработки с alembic upgrade head, а потом поняла, что это не совсем то, что я хотел.

Как я могу вернуть миграцию, чтобы я мог настроить ее и повторить попытку?

1 ответов


предполагая, что вы только хотите, чтобы вернуться один пересмотр, используйте alembic downgrade С относительный идентификатор миграции из -1:

alembic downgrade -1

это будет работать downgrade() метод вашей последней редакции и обновите таблицу ревизий, чтобы указать ревизию, в которой вы сейчас находитесь.

Если вам нужно вернуться к нескольким миграциям, запустите

alembic history

чтобы просмотреть список всех миграций в вашем проекте (от новейших до самых старых), затем скопируйте и вставьте идентификатор миграции, к которой вы хотите вернуться:

alembic downgrade 8ac14e223d1e

в настоящее время нет команды удалить миграции из каталога версий, поэтому, если вы хотите полностью стереть все следы вашей плохой миграции, вам нужно удалить файл версии (например,4c009570237e_add_widget_table.py) вручную.