我在openerp域中知道很少的运算符。我没有得到可用域及其解释的详细信息。特别是对于这些否定域。谁能告诉我详细清单?
答案 0 :(得分:72)
这给出了一个概述:
域运算符列表:!
(不是),|
(或),&
(和)
期限运营商列表:'=', '!=', '<=', '<', '>', '>=', '=?', '=like', '=ilike', 'like', 'not like', 'ilike', 'not ilike', 'in', 'not in', 'child_of'
<强>用法强>:
输入记录:
记录1:Openerp
记录2:openerp
记录3:Opensource
记录4:opensource
记录5:Open
记录6:open
记录7:Odoo
记录8:odoo
记录9:Odooopenerp
记录10:OdooOpenerp
'喜欢': [('input', 'like', 'open')]
- 返回区分大小写(通配符 - '%open%')搜索。
O / p:open,opensource,openerp,Odooopenerp
'不喜欢': [('input', 'not like', 'open')]
- 返回与区分大小写(通配符 - '%open%')搜索不匹配的结果。
O / p:Openerp,Opensource,Open,Odoo,odoo,OdooOpenerp
'= like': [('name', '=like', 'open')]
- 返回精确(='开放')区分大小写的搜索。
O / p:打开
'ilike': [('name', 'ilike', 'open')]
- 返回完全不区分大小写(通配符 - '%open%')搜索。
O / p:Openerp,openerp,Opensource,opensource,Open,open,Odooopenerp,OdooOpenerp
'not ilike': [('name', 'not ilike', 'open')]
- 返回与精确不区分大小写(通配符 - '%open%')搜索不匹配的结果。
O / p:Odoo,odoo
'= ilike': [('name', '=ilike', 'open')]
- 返回精确(='打开'或'打开')不区分大小写的搜索。
O / p:打开,打开
<强> '=?':强>
name ='odoo'
parent_id = False
[('name', 'like', name), ('parent_id', '=?', parent_id)]
- 返回名称域结果&amp;真
name ='odoo'
parent_id ='openerp'
[('name', 'like', name), ('parent_id', '=?', parent_id)]
- 返回名称域结果&amp; parent_id域名结果
'=?'是短路,如果右边为无或为假,则术语为“真”,'=?'
在其他情况下的行为类似于'='
<强> '在':强>
[('value1', 'in', ['value1', 'value2'])]
- 在运算符中将检查value1是否存在于右项列表中
'不在':
[('value1', 'not in', ['value2'])]
- 不在运算符中将检查值1是否在右项列表中不存在
虽然这些'in'和'not in'与list / tuple of values一起使用,后者
'='
和'!='
使用字符串
<强> '=':强>
值= 10
[('value','=',value)]
- 术语左侧有10个db,术语右,我们的值10将匹配
<强> '=!':强>
值= 15
[('value','!=',value)]
- 术语左侧有10个db,术语右,我们的值10不匹配
<强> 'child_of':强>
parent_id ='1'#Agrolait
'child_of':
[('partner_id', 'child_of', parent_id)]
- 返回给定parent_id的partner_id的左右列表
'&lt; =','&lt;','&gt;','&gt; =':
这些运算符主要用于openerp中,用于比较日期 - [('date', '>=', date_begin), ('date', '<=', date_end)]
。您也可以使用这些运算符来比较int或float。
答案 1 :(得分:-5)
过滤器语法中的域A和条件B类似于
<filter name="filtering" string="Filtering" domain="[(A),(B)]" />