Odoo中One2many与Many2many中的三元组列表(list of triplets)
在odoo中,经常会看到类似如下的代码:
self.write({ #### 'move_orig_ids': [(5, 0, 0)], #### })
上面代码中的(5,0,0)就是在odoo的多对多、一对多数据操作中,常用到的三元组列表。主要有以下这些:
(0, 0, values) :用所提供的values值新增一条记录
(1, id, values) :用values值更新对应id已存在的记录(不能在create()中使用)
(2, id, 0) :将id匹配记录从集合移除并从数据库中删掉(不能在create()中使用)
(3, id, 0) : 也是将id匹配记录从集合移除,但并不从数据库中删除
(4, id, 0) :将已存在的id记录增加到集合中
(5, 0, 0) : 从集合中删除所有记录,相当于显式地对每条记录使用命令3(3,id,0)(不能在create()中使用)
(6, 0, ids) : 将集合中的所有现有记录替换为ids列表,相当于对ids中的每个id先使用命令5,再操作命令4。

浙公网安备 33010602011771号