如何在“词条”查询中转义特殊符号

时间:2019-05-08 12:37:48

标签: ruby-on-rails ruby elasticsearch

我尝试使用“ term”来查找弹性记录。像这样:

bool: {
            must: [
              {term: {"contexts.key": "resource"}},
              {term: {"contexts.tag.name": 'billing/partner_accounts'}}
            ]
          }

但是搜索请求未返回任何内容。看起来它正在等待我的术语句子中的斜杠符号转义。所以...我尝试了下一个变体:“ billing / partner_account”,“ billing / partner_account”,“ billing \ / partner_account”。它没有给出成功的结果。如果将“ term”替换为“ match”,它将返回包含“ billing”或“ partner_accounts”子字符串的“ contexts.tag.name”的结果。但是我需要精确匹配。您能解释一下我该怎么做。谢谢

1 个答案:

答案 0 :(得分:0)

通过在字段名称中添加“关键字”来解决该问题,例如

term: { "contexts.tag.name.keyword": 'bla-bla-bla' }