odoo关系字段赋值

这里主要是讲模型write/create 方法字典参数中关系字段(M2O, O2M,M2M字段)的值的写法。

M2O: 比较简单,数据库中存的是关系模型的记录id, 是一个整型数值,写法如下: sale_order_line.write({'order_id': order.id})

O2M/M2M:复杂一些,主要操作方法如下:

(0, _, values):

              使用values字段指定的值创建新的记录。

              如创建一条订单时,其中订单行的指定, create({'order_line':[(0,0,{订单行值})]})

(1, id, values):

              用values指定的值更新id这条记录的值,方法不能用于create。

(2, id, _):

             从关系集合中删除id这条记录,并从数据库中删除记录,方法不能用于create。

(3, id, _):

              仅从关系集合中删除id这条记录。数据库不删除,仍存在。M2M关系的解除。

             不适用与O2M字段,不适用与create。

(4, id, _):

              将id这条记录添加到关系集合中,M2M关系的建立。不适用与O2M字段

(5, _, _):

              情况关系集合中的所有记录。等价与没个记录做(3,id,_)操作。

              不适用与O2M字段,不适用与create。

              

(6, _, ids):

                用ids指定的记录替换现有的关系记录。等价于先用5删除关系,再用4将每个id记录添加进来

注:上述中 '_'  符号可忽略,一般写做``0`` or ``False``。


你可能感兴趣的:(Odoo)