You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过PHP调用Odoo外部API实现名称前缀搜索?

修改PHP调用Odoo API实现前缀搜索的方法

Odoo外部API的搜索逻辑依赖**域(domain)**语法,要实现名称以s开头的记录搜索,只需调整域中的运算符和匹配值:

  1. 精确匹配的原代码片段(匹配名称为Sanda的project.project记录):
$domain = array(
    array('name', '=', 'Sanda')
);
// 调用API执行搜索
$records = $rpcClient->execute_kw(
    $db, $uid, $password,
    'project.project', 'search',
    array($domain)
);
  1. 修改为前缀搜索的代码:
  • 若需要区分大小写(仅匹配小写s开头的名称),使用like运算符,匹配值写s%(%是通配符,代表任意后续字符):
$domain = array(
    array('name', 'like', 's%')
);
$records = $rpcClient->execute_kw(
    $db, $uid, $password,
    'project.project', 'search',
    array($domain)
);
  • 若需要不区分大小写(匹配s或S开头的名称),改用ilike运算符:
$domain = array(
    array('name', 'ilike', 's%')
);
$records = $rpcClient->execute_kw(
    $db, $uid, $password,
    'project.project', 'search',
    array($domain)
);

核心规则说明

  • Odoo域的标准格式为[字段名, 运算符, 匹配值]
  • like:区分大小写的模糊匹配,%匹配任意长度字符,_匹配单个字符
  • ilike:不区分大小写的模糊匹配,通配符规则与like一致

内容的提问来源于stack exchange,提问作者Ben Hmida

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.22 02:18:07