Ruby on rails 如何使用ElasticSearch和Tire仅在搜索存在时按属性筛选搜索?
现在我写了Ruby on rails 如何使用ElasticSearch和Tire仅在搜索存在时按属性筛选搜索?,ruby-on-rails,ruby,full-text-search,elasticsearch,tire,Ruby On Rails,Ruby,Full Text Search,elasticsearch,Tire,现在我写了 Tire.search INDEX_NAME do query do filtered do query { string term } filter :or, { missing: { field: :app_id } }, { terms: { app_id: app_ids } } end end end.results.to_a 返回没有app_id或与您的术语匹配的项目听起来像是一个或过滤
Tire.search INDEX_NAME do
query do
filtered do
query { string term }
filter :or, { missing: { field: :app_id } },
{ terms: { app_id: app_ids } }
end
end
end.results.to_a
返回没有app_id或与您的术语匹配的项目听起来像是一个或过滤器的工作-我会试试
filter :or, [
{:not => {:exists => {:field => :app_id}}},
{:terms => {:app_id => app_ids}}
]
您的解决方案比我的
缺少的过滤器有什么优势<代码>过滤器:或,{missing:{field::app_id}}
不要这样认为,尽管我写文章时你丢失的东西不在那里