Django从ManyToMany关系中删除对象

我怎么会删除一个对象从多对多的关系,而不删除实际的对象?

例:

我有模特的MoodsInterest

“情绪”有很多领域的interests (这是一个models.ManyToManyField(Interest) 。许多许多领域models.ManyToManyField(Interest) )。

我创build了一个名为my_moodMoods实例。 在my_moods的兴趣领域,我有我的兴趣,意思

 >>> my_mood.interests.all() [my_interest, ...] 

如何在不删除模型实例的情况下从my_mood中删除my_interest? 换句话说,如何在不影响相关模型的情况下移除关系?

2 Solutions collect form web for “Django从ManyToMany关系中删除对象”

 my_mood.interests.remove(my_interest) 

Django的关系文件

注意:你可能必须使用Django的QuerySet API获取my_mood和my_instance的实例,然后才能执行这段代码。

如果您需要删除所有M2M引用而不触及底层对象,则从另一个方向工作会更容易:

 interest.mood_set.clear() 
  • request.user返回一个SimpleLazyObject,我该如何“唤醒”它?
  • 在Ajax调用之后使用Django模板呈现JSON对象
  • Django - 无法获取静态CSS文件加载
  • 如何在Django模板中包含图像文件?
  • Django:如何获取pipe理员表单中的当前用户
  • django模型表单对象的自动创builddate?
  • ManyToMany关系问题在保存后不会更新
  • Django查询使用.order_by()和.latest()