Skip to Content
Menu
This question has been flagged
1 Reply
2073 Views

Hi folks,


I'm trying to set some tags on res.partner for the partners created via the website. I know how to filter to get the contacts I want, but I don't know why it doesn't apply the category_id.


I've created an automated action which works without errors, but doesn't apply the tags. If you have an idea of what I'm doing wrong, don't hesitate to point me to the right direction ;-)

Here's the code


website_contacts = env['res.partner'].search([('team_id' , 'ilike' , "Site Web")])

for contact in website_contacts:
# 21 is the tag "Website" here.
contact.write({'category_id': [(21,)]})
Avatar
Discard
Best Answer

Maybe you have your solution already. but it is related to tuples you need to use:

For a many2many field, a list of tuples is expected. Following are the list of how to pass tuples.

(0, 0, { values }) link to a new record that needs to be created with the given values dictionary

(1, ID, { values }) update the linked record with id = ID (write values on it)

(2, ID) remove and delete the linked record with id = ID (calls unlink on ID, that will delete the object completely, and the link to it as well)

(3, ID) cut the link to the linked record with id = ID (delete the relationship between the two objects but does not delete the target object itself)

(4, ID) link to existing record with id = ID (adds a relationship)

(5) unlink all (like using (3,ID) for all linked records)

(6, 0, [IDs]) replace the list of linked IDs (like using (5) then (4,ID) for each ID in the list of IDs)

with that syntax it should work, and it will add your tag: 

'category_id':[(6,0,[21])]

Avatar
Discard
Related Posts Replies Views Activity
0
Sep 24
121
0
May 24
23
1
Apr 24
2601
0
Mar 24
414
0
Mar 24
529