I have a M2M field in my django model project. In my view I want to update a model instance with update() function. I know that for updating other ordinary fields we can pass a dictionary of the fields. But how can I pass M2M field to update() function?
Asked
Active
Viewed 3,024 times
2 Answers
5
You can easily add relations to the ManyToManyField using the add()
function (outside of your update()
):
blog.entries.add(post_1, post_2 ...)

Timmy O'Mahony
- 53,000
- 18
- 155
- 177
0
updating manytomany field you need to get instance of the sub class then apply update function.
class y:
b = Text Field
class X:
y = ManyToMany(y)
Code:
for y in x.y.all():
if y: meet you condition for which row to update
y.update(b='update')
I guess django does know support update() with M2M as it just create associate table for support and it can't understand which row in associate table to update.

DaveShaw
- 52,123
- 16
- 112
- 141