Module: Louisville::Extensions::Setter

Defined in:
lib/louisville/extensions/setter.rb

Class Method Summary collapse

Class Method Details

.configure_default_options(options) ⇒ Object



14
15
16
# File 'lib/louisville/extensions/setter.rb', line 14

def self.configure_default_options(options)
  options[:setter] = "desired_#{options[:column]}" if options[:setter] == true
end

.included(base) ⇒ Object



19
20
21
22
23
24
25
26
27
28
29
30
# File 'lib/louisville/extensions/setter.rb', line 19

def self.included(base)
  base.class_eval do
    attr_accessor :desired_louisville_slug
    alias_method :"#{louisville_config[:setter]}=", :desired_louisville_slug=

    if respond_to?(:accessible_attributes) && accessible_attributes.any?
      attr_accessible :desired_louisville_slug, louisville_config[:setter].to_sym
    end

    alias_method_chain :extract_louisville_slug_value_from_field, :setter
  end
end