回滚 Django 中的最后一次数据库迁移
Vaibhav Vaibhav
2021年8月10日
2021年6月29日
在使用 Django 模型时,我们总是要使用迁移功能,如果我们更改模型,就迁移它。在某些情况下,我们必须还原或逆转迁移。Django 使恢复迁移变得容易。本文将向你展示在 Django 项目中回滚上次数据库迁移的方法。
使用 migrate
命令回滚 Django 迁移
要恢复迁移,我们可以使用 Django 的 manage.py
文件提供的 migrate
命令。考虑一个 Django 应用程序 System
和这个应用程序的 migrations
文件夹中的两个迁移文件。设两个迁移文件分别为 0005_second_last_migration
和 0006_last_migration
;请注意,0006 是已应用的最新迁移。
如果我们必须从 0006 迁移恢复到 0005 迁移,我们将运行以下命令:
python manage.py migrate System 0005
--- OR ---
python manage.py migrate System 0005_second_last_migration
有必要提到应用程序名称,我们可以同时使用迁移号和文件名来恢复迁移。
如果我们必须反转这个 Django 应用程序 System
的所有迁移,我们将使用以下命令:
python manage.py migrate System zero
请记住,迁移有时是不可逆转的。通常,当对 Django 模型进行了一些重大更改时,就会出现这种情况。当我们尝试恢复到这样的迁移时,Django 会引发一个 IrreversibleError
。
Author: Vaibhav Vaibhav