Sha256: 0915378c1a77ef1ee3ab2cb36d0030d258aacf1e6ca44ca7466c27cdffd498a9
Contents?: true
Size: 1.07 KB
Versions: 3
Compression:
Stored size: 1.07 KB
Contents
module Sunspot module Search class FieldJsonFacet attr_reader :name def initialize(field, search, options) @name, @search, @options = (options[:name] || field.name), search, options @field = field end def rows @rows ||= begin data = no_data? ? [] : @search.json_facet_response[@field.name.to_s]['buckets'] rows = [] data.each do |d| rows << JsonFacetRow.new(d, self) end if @options[:sort] == :count rows.sort! { |lrow, rrow| rrow.count <=> lrow.count } else rows.sort! { |lrow, rrow| lrow.value <=> rrow.value } end rows end end def no_data? @search.json_facet_response[@field.name.to_s].nil? end def other_count(type) json_facet_for_field = @search.json_facet_response[@field.name.to_s] return 0 if json_facet_for_field.nil? other = json_facet_for_field[type.to_s] || {} other['count'] end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
sunspot-2.7.1 | lib/sunspot/search/field_json_facet.rb |
sunspot-2.7.0 | lib/sunspot/search/field_json_facet.rb |
sunspot-2.6.0 | lib/sunspot/search/field_json_facet.rb |