如何从冲洗数据库恢复南方

时间:2011-11-28 09:16:10

标签: django postgresql django-south

我将一些数据批量加载到我的Postgresql数据库中,但实现所有这些都有点不对。热衷于纠正这个我刷新数据库以重新加载正确的数据。

重新加载数据,我对模型进行了更改并应用了正常的./manage.py schemamigration app --auto,然后应用了./manage.py migrate app(到目前为止一直在努力)。

此时我开始收到错误:

django.db.utils.DatabaseError: relation "app_model" already exists

并且回溯似乎是调用初始迁移文件001.所以我认为答案是做类似的事情:

./manage.py migrate app 0005 --fake

我想要应用的当前迁移是0006(即这是迁移开始失败的地方),然后postgres中的南数据库应该回到我愚蠢地冲洗它之前的位置。此时我应该能够

./manage.py migrate app

有人可以告诉我这种方法是正确的吗?或者如果没有,那么正确的方法是什么?

2 个答案:

答案 0 :(得分:2)

python manage.py migrate app --fake之后 做一个python manage.py schemamigration app --auto 然后执行python manage.py migrate app

答案 1 :(得分:0)

你也可以使它更通用:

python manage.py migrate
python manage.py flush
python manage.py migrate --fake

这将在冲洗后恢复所有南方历史