diff --git a/sunspot/lib/sunspot/query/dismax.rb b/sunspot/lib/sunspot/query/dismax.rb index 8db75baee..df164052d 100644 --- a/sunspot/lib/sunspot/query/dismax.rb +++ b/sunspot/lib/sunspot/query/dismax.rb @@ -64,7 +64,7 @@ def to_subquery params.delete :defType params.delete :fl keywords = params.delete(:q) - options = params.map { |key, value| escape_param(key, value)}.join(' ') + options = params.map { |key, value| escape_param(key, value) }.join(' ') "_query_:\"{!dismax #{options}}#{escape_quotes(keywords)}\"" end @@ -119,10 +119,7 @@ def has_fulltext_field?(field) private def escape_param(key, value) - escaped_param = [] - value = [value] unless value.respond_to? :each - escaped_param = "#{key}='#{escape_quotes(value.join(" "))}'" - return escaped_param + "#{key}='#{escape_quotes(Array(value).join(" "))}'" end def escape_quotes(value)