odoo运算符
转义符:
注意:在xml文件中使用时Domain 不能直接使用<, >等符号作为domain的operator。 这个不是odoo的问题,而是xml标准的问题
| 
 
 符号  | 
 
 转义  | 
| 
 
 >  | 
 
 >  | 
| 
 
 <  | 
 
 <  | 
| 
 
 "  | 
 
 "  | 
| 
 
 '  | 
 
 '  | 
| 
 
 &  | 
 
 &  | 
| 
 
 >=  | 
 
 >=  | 
| 
 
 <=  | 
 
 <=  | 
| 
 
 !=  | 
 
 ><  | 
逻辑运算符包括
| 
 
 符号  | 
 
 说明  | 
| 
 
 =,>.<,>=,<=,!=  | 
 
 比较运算,等于,不等于,大于,大于等于,小于,小于等于  | 
| 
 
 丨(or)  | 
 
 或,二元运算,表示后面2条条件满足一个就行  | 
| 
 
 &(and)  | 
 
 与,二元运算,与,表示符号后2个条件同时满足,默认关系,可以省略  | 
| 
 
 !(no)  | 
 
 非,单目运算,将后面一个条件反转,如果是ture,就变成False  | 
| 
 
 like  | 
 
 模糊匹配,通过%value%匹配  | 
| 
 
 =like  | 
 
 可以使用模式匹配,下划线-匹配一个字符,百分号%匹配零或者多个字符  | 
| 
 
 ilike  | 
 
 类似like,但是忽略大小写  | 
| 
 
 =ilike  | 
 
 类似=like,但是忽略大小写  | 
| 
 
 not like  | 
 
 通过%value%不匹配的  | 
| 
 
 not ilike  | 
 
 类似not like,但是忽略大小写  | 
| 
 
 =?  | 
 
 未设置或者等于,未设置表示当值是None或者是False,其余和=一样  | 
| 
 
 in  | 
 
 判断value是否在元素的列表里面  | 
| 
 
 not in  | 
 
 判断value是否不再元素的列表里面  | 
| 
 
 child_of  | 
 
 判断是否value的子录, [(A,'child_of',A)]返回true  | 
带逻辑运算符复杂的表达式 如下
| 
 
 ['|','&','|',a,b,c,'&',d,e]  | 
其中a,b,c,e,f,g分别是不带逻辑运算符的表达式,表达式的运算顺序:
| 
 
 ['|','&','|',a,b,c,'&',d,e] ['|','&',(a | b),c,'&',d,e] ['|',((a | b) & c),'&',d,e] ['|',((a | b) & c),(d & e)] [(((a | b) | c) | (d & e))]  | 
Domin条件表达式规则
domain中的单个条件是一个三个元素组成的元组。
domain=[('hr_expense_ok','=',True)]
最简单的格式:[('字段', '操作符', 值)]
第一个是对象的一个column,也就是字段名;
第二个是比较运算符``=, !=, >, >=, <, <=, like, ilike, in, not in, child_of, parent_left, parent_right``;
第三个就是用来比较的值了。
场景:可以视图,窗口,字段,搜索,ORM中使用。
                    
                
                
            
        
浙公网安备 33010602011771号