Odoo中文社区可以通过以下两个域名访问:shine-it.net , odoo.net.cn

由于系统升迁的原因,本论坛部分较早期的内容存在格式和链接损坏失效的问题,并非本论坛系统本身的缺陷,望谅解

本社区没有维护任何QQ群讨论组,任何与本社区同名的QQ群讨论组的言论与本社区无关!

开发人员可以登录gitter讨论组: http://gitter.im/odoo-china/Talk, 需要github账号

如果您登录系统碰到问题,请在微信公众号留言:

Domain中 like 的多种用法



  • 今天 在 search 中有个 domain 要写

    我需要 匹配的是,
    字段左边 的值, 但是  like 操作 匹配的是 字段任意位置的值.


    比如:
    [('nwtcode', 'like',metric_spec)]
    跟踪sql 发现产生的 sql 条件是这样的

    AND  ("ia_multi_layers"."nwtcode" like '%8980%'))

    群里请教后 总监 提示 '=like'
    于是

    [('nwtcode', '=like',metric_spec+'%')]
    产生的 sql 条件是 :
    AND  ("ia_multi_layers"."nwtcode" like '89
    80%'))

    就是说 =like 操作符时, 直接使用表达式的值 作为 匹配模版



    ===========

    搜索 代码, 发现还有更多的 操作符, 文档中未说明
    openerp\osv\expression.py  line:159

    TERM_OPERATORS = ('=', '!=', '<=', '<', '>', '>=', '=?', '=like', '=ilike',
                      'like', 'not like', 'ilike', 'not ilike', 'in', 'not in',
                      'child_of')





  • 喔顶....


Log in to reply