提问人:Cato Johnston 提问时间:2/26/2010 更新时间:5/14/2012 访问量:3828
Django South 数据迁移运行了两次
Django South data migration is running twice
问:
我有一个迁移:
...
def forwards(self, orm):
for p in products.models.Product.objects.all():
new = cart.models.Product(title = p.title)
new.save()
def backwards():
...
但是当我运行migrate时,它会在循环中运行两次。
答:
8赞
Ofri Raviv
2/26/2010
#1
你有吗
no_dry_run = True
在迁移定义中?
此外,我认为你应该使用orm.Product.objects.all()
5赞
b1_
5/14/2012
#2
发生这种情况是因为 South 运行了两次:第一次它没有接触 DB,第二次推送到 db 的更改。
快速运行解决方案./manage migrate your_app --db-dry-run
或使用
if not db.dry_run:
在代码的向前/向后部分
评论