我的django模型项目中有一个M2M字段。在我看来,我想用update()函数更新模型实例。我知道,为了更新其他普通字段,我们可以传递字段的字典。 但是如何将M2M字段传递给update()函数?
答案 0 :(得分:5)
您可以使用add()
函数(update()
之外)轻松地向ManyToManyField添加关系:
blog.entries.add(post_1, post_2 ...)
答案 1 :(得分:0)
更新manytomany字段,您需要获取子类的实例,然后应用更新函数。
y类:
b = Text Field
第X类:
y = ManyToMany(y)
代码:
for y in x.y.all():
if y: meet you condition for which row to update
y.update(b='update')
我猜django确实知道支持update()与M2M,因为它只是创建关联表以获得支持,它无法理解关联表中要更新的哪一行。