dongzz4545
2017-12-08 02:17
浏览 282
已采纳

将Elasticsearch DSL转换为gopkg.in/olivere/elastic.v5

I've got json that I want to translate into an Elasticsearch query using https://godoc.org/gopkg.in/olivere/elastic.v5

json =

{
  "query": {
    "bool": {
      "filter": [
        {
          "exists": {
            "field": "Videos.en"
          }
        }
      ]
    }
  }
}

Pretty simple! What I've got so far - which clearly isn't working - is:

enVidsQuery, err := elastic.NewBoolQuery().
        Filter(elastic.Exists("field", "Videos.en"))

Where elastic references "gopkg.in/olivere/elastic.v5" in my imports.

Can anyone provide me with the correct syntax? I figure it's a trivial solution for anyone familiar with the library.

图片转代码服务由CSDN问答提供 功能建议

我有要使用 https://godoc.org/gopkg.in/olivere/elastic.v5 \ n

json =

  {
“ query”:{
“ bool”:{
“ filter”:[
 {
“存在 “:{
” field“:” Videos.en“ 
} 
} 
] 
} 
} 
} 
   
 
 

\ n非常简单! 到目前为止,我得到的-显然不起作用的是:

  enVidsQuery,err:= elastic.NewBool​​Query()。
 Filter(elastic.Exists(  “ field”,“ Videos.en”))
   
 
 

其中 elastic 引用的“ gopkg.in/olivere/elastic.v5” 我的进口商品。

有人可以为我提供正确的语法吗? 我认为对熟悉该库的人来说,这是一个简单的解决方案。

  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • dongleiqiao4906 2017-12-08 03:50
    已采纳

    Correct query will be:

    elastic.NewBoolQuery().Filter(elastic.NewExistsQuery("Videos.en"))
    
    已采纳该答案
    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题