Odoo attrs X2many 类型的过滤

有童鞋在群里问到 attrs 中的 many2many类型的字段该如何进行domain过滤,其实非常简单:

Many2many的字段在js中获取的值的格式为[[6,false,[]]]

所以attrs中的many2many的判断可以写为以下格式:

attrs="{'invisible': [('category_id', '=', [[6, False, []]])]}".

Many2many的各个涵义如下图:

domain的计算在view_form.js的compute_domain方法里计算。

(0,0,{}):创建新记录

(1,ID,{}):update ID 的记录

(2,ID):级联删除ID的对象

(3,ID):只删除对象间的关系并不删除关联对象

(4,ID):添加关联关系

(5,ID):删除所有

(6,?,ids):删除所有关联关系并将ids的记录关联。相当于先执行5,在循环执行4.

原文地址:https://www.cnblogs.com/kfx2007/p/5513030.html