一次保存多个实例

时间:2014-01-08 18:07:14

标签: django

以下代码只保存数据库中的一个实例。我添加了range所以它应该是3.有什么不对吗?感谢

def save_formset(self, request, form, formset, change):
    for coupon in range(3):
        instances = formset.save(commit=False)
        for instance in instances:
            instance.name = 'test'
            instance.save()
        formset.save_m2m()

2 个答案:

答案 0 :(得分:0)

无论使用哪种格式,三次中的每一种,您都从该格式集中获取相同的元素并保存它。因此,每次都会覆盖相同的更改,因此看起来只需进行一次更改。

答案 1 :(得分:0)

我在instance.pk = None之前使用instance.save()解决了同样的问题。我不知道是否有更好的方法可以做到这一点,但它有效!