Module: Blacklight::Configuration::Fields::ClassMethods
- Defined in:
- lib/blacklight/configuration/fields.rb
Instance Method Summary collapse
-
#define_field_access(key, options = {}) ⇒ Object
Add a configuration block for a collection of solr fields.
Instance Method Details
#define_field_access(key, options = {}) ⇒ Object
Add a configuration block for a collection of solr fields
13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
# File 'lib/blacklight/configuration/fields.rb', line 13 def define_field_access(key, = {}) key = key.to_s if respond_to? :to_s self.default_values[key.pluralize.to_sym] = ActiveSupport::OrderedHash.new base_class_name = .fetch(:class, Field) unless self.const_defined? key.camelcase class_eval <<-END_EVAL, __FILE__, __LINE__ + 1 class #{key.camelcase} < #{base_class_name}; end END_EVAL end class_eval <<-END_EVAL, __FILE__, __LINE__ + 1 def add_#{key}(*args, &block) add_blacklight_field("#{key}", *args, &block) end END_EVAL end |