我有两种看法: 1.登记表视图 2更新注册向导视图。 楷模 : 1注册 2个成员
我正在使用Many2many字段(“成员”)设置注册过程。 注册过程完成后,在窗体视图上显示一个按钮(更新成员)。 单击此按钮时,将显示一个向导窗口,其中显示已注册成员。 在这里,我需要删除一些成员(从向导中列出的成员),然后单击ApplyChanges按钮进行更改(调用自定义功能-ApplyChanges)。最后更改将应用于主要的Registrations模型。我该怎么做?
incoming_member_ids = fields.Many2many("members", String='Incoming Members')
outgoing_member_ids =字段。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
答案 0 :(得分:0)
要从man2many
字段中删除特定ID的关系,必须在该字段上使用odoo
提供的符号。假设您要对其执行操作的记录集为records
,man2many字段为outgoing_member_ids
,要从该关系中删除的id为outgoing_member_ids[0]
,则必须编写:
records.write({'outgoing_member_ids': [(3, outgoing_member_ids[0])]})