gpt4 book ai didi

django - 如何删除 Django 中的所有多对多对象

转载 作者:行者123 更新时间:2023-12-02 06:36:25 24 4
gpt4 key购买 nike

我有一个模型 Foo。这与 Moo 有着多对多的关系。

现在 Foo 在其多对多字段中有许多对象,即它有 moo1、moo2、moo3 等如何将所有对象一起删除?我知道我们可以单独删除每个。

foo = FOO()
foo.save()
foo.moo.add(moo1)
foo.moo.remove(moo1)

foo = FOO()
foo.save()
foo.moo.add(moo1)
foo.moo.add(moo2)
foo.moo.reset() # This should remove all objects that have been added
# in this field. This does not work but I want
# something like this.

最佳答案

使用clear方法。

Removes all objects from the related object set:

b = Blog.objects.get(id=1)
b.entry_set.clear()

Note this doesn’t delete the related objects – it just disassociates them.

Just like remove(), clear() is only available on ForeignKeys where null=True.

关于django - 如何删除 Django 中的所有多对多对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18973625/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com