Cat*_*ton 6 django django-south
我有一个迁移:
...
def forwards(self, orm):
for p in products.models.Product.objects.all():
new = cart.models.Product(title = p.title)
new.save()
def backwards():
...
Run Code Online (Sandbox Code Playgroud)
但是当我运行迁移时,它会在循环中运行两次.
你有没有
no_dry_run = True
Run Code Online (Sandbox Code Playgroud)
在迁移定义中?
此外,我认为你应该使用 orm.Product.objects.all()
发生这种情况是因为South运行两次:第一次没有触及DB,第二次推送更改为db.
快速解决方案运行 ./manage migrate your_app --db-dry-run
或者使用
if not db.dry_run:
在前向/后向部分的代码中
这里讨论http://south.aeracode.org/ticket/138
| 归档时间: |
|
| 查看次数: |
3637 次 |
| 最近记录: |