gpt4 book ai didi

python - 如何通过 odoo 10 向导中的自定义方法从 Many2many 字段中删除数据?

转载 作者:行者123 更新时间:2023-11-29 13:41:50 25 4
gpt4 key购买 nike

我有两种看法:1.注册表查看2 更新注册向导 View 。楷模 :1 注册2个成员

我正在设置一个包含 Many2many 字段(“成员”)的注册过程。注册过程后,一个按钮(更新成员)显示在表单 View 上。单击此按钮时会出现一个向导窗口,其中显示了注册成员(member)。在这里我需要删除一些成员(从向导中列出的成员)并单击 ApplyChanges 按钮进行更改(调用自定义函数 - ApplyChanges)。 atlast 更改将应用​​于主要注册模型。我该怎么做??

incoming_member_ids = fields.Many2many("members", String='Incoming Members')

outgoing_member_ids = fields.Many2many("members", String='Outgoing Members')

### incoming members list
if x.action_type == 'incoming_members':
for incoming_partner in x.incoming_members_ids:
incoming_member_ids.append(incoming_member.id)
if not incoming_member_ids:
continue
self.env['registered.members'].create({
'member_ids': incoming_member_ids[0],
})
incoming_member_ids.remove(incoming_member_ids[0])
return True
### Outgoing members list
elif x.action_type == 'outgoing_members':
for outgoinging_member in res.outgoing_member_ids:
outgoing_member_ids.append(outgoinging_member.id)
if not outgoing_member_ids:
continue
self.env['registered.members'].create({
'member_ids': outgoing_member_ids[0],
})
outgoing_member_ids.remove(outgoing_member_ids[0])
return True

最佳答案

要从 man2many 字段中删除特定 id 的关系,您必须在该字段上使用 odoo 提供的符号。假设您要对其执行操作的记录集是 records,man2many 字段是 outgoing_member_ids,您要从该关系中删除的 id 是 outgoing_member_ids[0] ,你必须写:

records.write({'outgoing_member_ids': [(3, outgoing_member_ids[0])]})

关于python - 如何通过 odoo 10 向导中的自定义方法从 Many2many 字段中删除数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54242962/

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