如何撤消django中未完成迁移的更改

时间:2017-02-08 21:10:52

标签: python mysql django django-migrations

我运行makemigrations然后在django项目上运行迁移。但是由于一些复杂性,迁移无法在两者之间完成和停止。

将数据库恢复到早期状态或撤消未完成迁移更改的最简单方法是什么。

我正在使用django 1.10,但我认为同样适用于1.6之后的django版本

1 个答案:

答案 0 :(得分:0)

正如Alan Avalos在评论中所说,我们无法回滚未完成的迁移。当我在关于迁移的另一个答案django revert last migration中发布时,我不得不手动删除所有更改,并且花费了很多时间,因为它应该非常谨慎地完成。

您的想法是必须检查已运行的特定迁移以及导致错误的特定迁移。留下所有已经申请的人。通过进入mysql来删除未应用迁移的更改,然后一旦完成,找到导致迁移失败的原因并纠正该事情的根本原因。

删除未应用的迁移文件,然后重新运行makemigration and migrate。