0
我有一個附加Facet的ElasticSearch/Tire查詢。它看起來是使用全局作用域的方面,而不是查詢範圍和過濾器。ElasticSearch/Tire - Facets未被查詢過濾?
這是我的定義。我不知道如何確定它的使用範圍。
def self.facets_for(keyword_array, fasit, opts = {})
keyword_array = [keyword_array] if keyword_array.is_a?(String)
tire.search(per_page: opts[:per_page], page: opts[:page]) do
query do
boolean { should { string '*' }}
end
filter :terms, :keyword => keyword_array
facet "phrases" do terms :phrases, :size => 20 end if fasit.include?("phrases")
facet "sentiment" do terms :sentiment end if fasit.include?("sentiment")
facet "lang" do terms :lang end if fasit.include?("lang")
facet "provider" do terms :provider end if fasit.include?("provider")
end # tire search
end
眼下,這將返回方面,在範圍是「全球性」,即它們不是由過濾器過濾(或查詢是否有一個更復雜的查詢)。
我錯過了什麼?