Class: Sunspot::AttributeField

Inherits:
Field
  • Object
show all
Defined in:
lib/sunspot/field.rb

Overview

AttributeField instances encapsulate non-tokenized attribute data. AttributeFields can have any type except TextType, and can also have a reference (for instantiated facets), optionally allow multiple values (false by default), and can store their values (false by default). All scoping, sorting, and faceting is done with attribute fields.

Instance Attribute Summary

Attributes inherited from Field

#boost, #indexed_name, #name, #reference, #type

Instance Method Summary collapse

Methods inherited from Field

#cast, #eql?, #hash, #joined?, #more_like_this?, #multiple?, #stored?, #to_indexed

Constructor Details

#initialize(name, type, options = {}) ⇒ AttributeField

:nodoc:



179
180
181
182
183
184
185
186
187
188
189
190
# File 'lib/sunspot/field.rb', line 179

def initialize(name, type, options = {})
  @multiple = !!options.delete(:multiple)
  super(name, type, options)
  @reference =
    if (reference = options.delete(:references)).respond_to?(:name)
      reference.name
    elsif reference.respond_to?(:to_sym)
      reference.to_sym
    end

  check_options(options)
end