如何在Django 1.7中重置应用程序的所有迁移?

时间:2014-12-04 22:01:37

标签: python django

我目前正在使用postgres,我在我的活动应用程序中删除了一个表。现在,当我尝试运行makemigrations时,我遇到了各种各样的错误:

 return self.cursor.execute(sql, params)
    django.db.utils.ProgrammingError: relation "events_event" does not exist

如何在Django 1.7中重置应用的所有迁移和模型?还有一种简单的方法可以在应用程序中重置单个模型吗?在我的情况下,我只想删除事件表然后重新创建它。

2 个答案:

答案 0 :(得分:0)

尝试从数据库中的south_migrationhistory表中删除所有记录,并从/ migrations中删除所有迁移文件...(或者只删除问题迁移文件,因为如果删除所有迁移文件,则应再次进行初始迁移)

答案 1 :(得分:0)

1)如果您想从初始迁移开始:

在您的应用中,有一个名为migrations的文件夹。只需删除该文件夹中除__init__.py文件以外的所有文件。这将为您重置迁移历史记录。

然后,当您运行makemigrations命令时,它将从初始迁移开始!

2)如果要删除和/或添加特定模型,则可能需要根据需要手动编辑迁移文件。https://docs.djangoproject.com/en/1.7/topics/migrations/#migration-files或者您可以根据需要删除特定的迁移文件< / p>