跳至内容
菜单
此问题已终结
3 回复
20336 查看

in XML RPC you can search for models with arguments like this:

args = [( "name", "=", category_values['name']),]

but what other operator exists beside =, <=, >= ?

in this instance I'm searching for something that acts like MYSQL's LIKE

name LIKE %category_values['name']%

Is this even possible here?

形象
丢弃
最佳答案

Postgres has like and ilike to search with or without case-sensitive application. The other parameters are:

like : [('name', 'like', 'John%')]
ilike : [('name', 'ilike', 'John%')]
= : [('product_id', '=', 122)]
in : [('state', 'in', ('draft', 'done'))]
< : [('price_unit', '<', 14.50)]
<= : >[('price_unit', '<=', 14.50)]
> : [('price_unit', '>', 14.50)]
>= : [('price_unit', '>=', 14.50)]
!= : [('product_id', '!=', 122)]

Also, is interresting to know that OpenERP use Polish Notation to concatenate more search argument. For example if you wanna search a customer with name John you can use:

[('name', 'ilike', 'John%'), ('customer', '=', True)]

Note: the AND operator is implied. If You wanna search a partner called John or Jack you can use this code:

['|', ('name', 'ilike', 'John%'), ('name', 'ilike', 'Jack%')]

where | is the OR operator.

形象
丢弃
最佳答案

Can anyone tell how to write this in php with xmlrpc?

形象
丢弃
最佳答案

Regarding XML-RPC Complete solution is here,

http://goo.gl/rZP1Y6

$data = $rpc->searchread( array(array('email','!=','')), "res.partner"); // CORRECT

形象
丢弃
相关帖文 回复 查看 活动
1
7月 25
487
1
2月 25
1245
0
9月 23
2191
2
6月 23
4010
1
8月 22
12752