1

我知道以下是 openerp7 支持的运算符。

  =, !=, >, >=, <, <=, like, ilike, in, not in, child_of, parent_left, parent_right 

我想在 openerp 中实现startwithendswith搜索。前任

AB* (starts with AB)
*AB (Ends with AB)

有没有办法用 openerp 框架本身来做到这一点,而不用 cr.execute() 将它们作为 sql 语句执行。具体来说,我想在全局过滤器中这样做。

更新帖子以获得更好的说明

在此处输入图像描述

在上面的帖子中,我只有一位名叫 ABC 客户的客户。我搜索了 Cu%,这意味着以 Cu 开头,而记录以 AB 开头,仍然显示结果。在我的情况下,这不好。

而且我确实理解 =ilike, % 并不是要将其放置在全局过滤器上,而是放在代码上(在域过滤器中)。但是,为了使前面的场景正确,我应该怎么做?

感谢您的见解。

4

1 回答 1

1

使用'=like''=ilike'运营商。

以 AB 开头的是[('field','=like','AB%')]

以 AB 结尾的是[('field','=like','%AB')]

用于ilike不区分大小写的匹配。

likeilike运算符(不带'=')会在搜索值前后自动添加通配符。

于 2013-08-16T11:21:24.823 回答