如何在 One2many 字段中向 Many2many 字段添加多个值?Odoo 10

mah*_*shi 3 orm odoo odoo-9 odoo-10

我正在尝试使用 create 方法添加一个 One2many 字段,并且该字段有一个我需要填充的 Many2many 字段,可以有多个值。

color_selector是一个 Many2many 字段,该字段的数据类似于color.true(1, 5 )color.true(5)

location_env.sudo().create({'loc_id': loc_id.id,
                                    'loc_name': loc_id.loc_name,
                                    'purchase_order_line_id': line_id.id,
                                    'color_selector': (6, 0, colors_ids)})
Run Code Online (Sandbox Code Playgroud)

我努力了 :

'color_selector': (6, 0, colors_ids)
'color_selector': [(6, 0, colors_ids)]
'color_selector': (6, 0, [colors_ids])
c_ids = (4, colors)
'color_selector': (6, 0, c_ids)
Run Code Online (Sandbox Code Playgroud)

And*_*hle 5

要在 Odoo 中创建 One2Many 记录,您应该这样做。

loc_id.your_one_two_many_field = [(0,0,
                                     {'loc_name': loc_id.loc_name,
                                      'purchase_order_line_id': line_id.id,
                                      'color_selector': [(6, 0, colors_ids)]}
                                 )]
Run Code Online (Sandbox Code Playgroud)

你的colors_ids变量是一个列表吗?还是记录集?

它必须是记录 ID 的列表。例如[1,2,3,4,5]

如果您的color_ids变量是记录集,请尝试以下操作

color_selector: [(6, 0, colors_ids.ids)]
Run Code Online (Sandbox Code Playgroud)

希望它对你有用。