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

多语言环境下Search Doctype Bar需支持英文Doctype名称搜索

解决方案:多语言环境下用英文Doctype名称搜索

1. 修改搜索匹配逻辑

直接调整搜索栏的匹配规则,让它同时识别原始英文Doctype名称和当前语言的翻译名称:

  • 前端处理:如果搜索逻辑在前端,修改过滤函数同时对比两个字段(以JS为例):
const filteredDoctypes = doctypes.filter(item => {
  const searchTerm = inputValue.toLowerCase();
  return item.name.toLowerCase().includes(searchTerm) || item.label.toLowerCase().includes(searchTerm);
});
  • 后端处理:如果是接口驱动的搜索,调整查询语句同时匹配原始名称和翻译字段(以SQL为例):
SELECT * FROM doctypes 
WHERE LOWER(name) LIKE '%{search_term}%' 
OR LOWER(translated_label) LIKE '%{search_term}%';

2. 给Doctype加别名支持

在系统的Doctype配置里新增aliases字段,把英文名称设为默认别名,搜索时同时匹配别名和当前语言的显示名称:

  • 配置示例:
{
  "doctype": "Customer",
  "label": "Client", // 法语翻译
  "aliases": ["Customer"]
}

3. 优化搜索结果排序(可选)

如果需要让英文名称的匹配结果更靠前,可以给搜索结果加排序规则:

filteredDoctypes.sort((a, b) => {
  const aMatchesName = a.name.toLowerCase().includes(searchTerm);
  const bMatchesName = b.name.toLowerCase().includes(searchTerm);
  return bMatchesName - aMatchesName; // 匹配英文名称的结果排前面
});

4. 临时应急方案

如果暂时没法改代码,可以给用户加个快速切换到英文的快捷键/按钮,搜完再切回原语言——但这只是权宜之计,不如前面的方案彻底。

内容的提问来源于stack exchange,提问作者Andy Longrée

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.12 10:25:00