如何为 Chewy 查询找到对应的 ES 查询?
How to find the corresponding ES query for a Chewy query?
我在我的 rails 应用程序中使用 chewy
来查询 ElasticSearch。
Autocomplete
是我的 ElasticSearch 索引。
AutocompleteIndex.suggest(
suggest: {
text: cleanup_query('query'),
completion: {
field: 'search_suggest',
size: 10,
contexts: {
entity: @contexts
},
fuzzy: { fuzziness: 'AUTO' }
}
}
).suggest
这是我用来查询 Autocomplete
数据的耐嚼查询。
反过来,这样的查询,
{:body=>{:suggest=>{:suggest=>{:text=>["9"], :completion=>{:field=>"search_suggest", :size=>10, :contexts=>{:entity=>[{:context=>"All"}]}, :fuzzy=>{:fuzziness=>"AUTO"}}}}}, :index=>["autocomplete"], :type=>[]}
如何获取上述对应的ElasticSearch Query?
要启用 ES 日志,请在 initializers/chewy.rb
中设置 Chewy.logger.level = :debug
{:body=>{:suggest=>{:suggest=>{:text=>["9"], :completion=>{:field=>"search_suggest", :size=>10, :contexts=>{:entity=>[{:context=>"All"}]}, :fuzzy=>{:fuzziness=>"AUTO"}}}}}, :index=>["autocomplete"], :type=>[]}
以上是格式化的弹性搜索查询。以上对应的 ES 查询为:
curl -X GET "localhost:9200/autocomplete/_search?pretty" -H 'Content-Type: application/json' -d'
{
"suggest" : {
"suggest" : {
"text" : ["9"],
"completion": {
"field": "search_suggest",
"size": 10,
"contexts": {
"entity":[{"context": "All"}]
}
}
}
}
}
'
我在我的 rails 应用程序中使用 chewy
来查询 ElasticSearch。
Autocomplete
是我的 ElasticSearch 索引。
AutocompleteIndex.suggest(
suggest: {
text: cleanup_query('query'),
completion: {
field: 'search_suggest',
size: 10,
contexts: {
entity: @contexts
},
fuzzy: { fuzziness: 'AUTO' }
}
}
).suggest
这是我用来查询 Autocomplete
数据的耐嚼查询。
反过来,这样的查询,
{:body=>{:suggest=>{:suggest=>{:text=>["9"], :completion=>{:field=>"search_suggest", :size=>10, :contexts=>{:entity=>[{:context=>"All"}]}, :fuzzy=>{:fuzziness=>"AUTO"}}}}}, :index=>["autocomplete"], :type=>[]}
如何获取上述对应的ElasticSearch Query?
要启用 ES 日志,请在 initializers/chewy.rb
中设置Chewy.logger.level = :debug
{:body=>{:suggest=>{:suggest=>{:text=>["9"], :completion=>{:field=>"search_suggest", :size=>10, :contexts=>{:entity=>[{:context=>"All"}]}, :fuzzy=>{:fuzziness=>"AUTO"}}}}}, :index=>["autocomplete"], :type=>[]}
以上是格式化的弹性搜索查询。以上对应的 ES 查询为:
curl -X GET "localhost:9200/autocomplete/_search?pretty" -H 'Content-Type: application/json' -d'
{
"suggest" : {
"suggest" : {
"text" : ["9"],
"completion": {
"field": "search_suggest",
"size": 10,
"contexts": {
"entity":[{"context": "All"}]
}
}
}
}
}
'