¿Cómo eliminaría un objeto de una relación de varios a varios sin eliminar el objeto real?
Ejemplo:
Tengo los modelos Moodsy Interest.
Moodtiene un campo de varios a varios interests(que es a models.ManyToManyField(Interest)).
Creo una instancia de Moodsllamado my_mood. En my_moodsel campo de intereses que tengo my_interest, es decir
>>> my_mood.interests.all()
[my_interest, ...]
¿Cómo se quita my_interestde my_moodsin borrar cualquier caso modelo? En otras palabras, ¿cómo elimino la relación sin afectar los modelos relacionados?
django
many-to-many
Nachshon Schwartz
fuente
fuente

AttributeError: 'RelatedManager' object has no attribute 'remove'entry my_mood.interests.add(my_interest)Si necesita eliminar todas las referencias M2M sin tocar los objetos subyacentes, es más fácil trabajar desde la otra dirección:
Si bien esto no aborda directamente la pregunta del OP, a menudo es útil en esta situación.
fuente
interest.relatedname.clear()En su caso, simplemente puede borrar la relación
Entonces tal vez cuando vuelva a crear una nueva relación en su serializador, pueda hacer algo como esto
fuente