我让 elastic.js 像这样构建动态查询:
{
"size": 15,
"query": {
"bool": {
"must": [
{ "term": { "tag": { "term": "rocket" } } },
{ "term": { "name": { "term": "space" } } }
],
"should": [
{ "wildcard": { "place": { "value": "Moo*" } } }
]
}
}
}
用于此的 Elastic.js 代码是(翻译器):
ejs.Request()
.size(15)
.query(
ejs.BoolQuery()
.must(ejs.TermQuery('tag', 'rocket'))
.must(ejs.TermQuery('name', 'space'))
.should(ejs.WildcardQuery('place', 'Moo*'))
)
它工作得很好,我很高兴,我希望它是那样的。但我意识到我需要添加一个选项来执行这个OR
有条件的查询,而不是AND
现在。
它应该找到符合任何提供条件的文档。
而这项任务让我没有任何线索(即使是关于将完成此目的的 DSL)。
我看过OrFilter但我不知道如何正确使用它(尤其是使用 elasticJS)。任何关于弹性/js的可靠信息来源将不胜感激