Module: BlankAttributes::Blankable::InstanceMethods

Defined in:
lib/blank_attributes/blankable.rb

Instance Method Summary collapse

Instance Method Details

#blank_attribute?(attribute_name) ⇒ Boolean



46
47
48
49
# File 'lib/blank_attributes/blankable.rb', line 46

def blank_attribute?(attribute_name)
  return false if attribute_name.blank?
  blankable_attributes.include? attribute_name.to_sym
end

#has_blankable_attribute?Boolean



31
32
33
# File 'lib/blank_attributes/blankable.rb', line 31

def has_blankable_attribute?
  blankable_attributes.any?
end

#normalize_blank_attributesObject



35
36
37
38
39
40
41
42
43
44
# File 'lib/blank_attributes/blankable.rb', line 35

def normalize_blank_attributes
  return if skip_normalize_blank_atttributes?
  type_handler = BlankAttributes::TypeHandler.new(self)

  blankable_attributes.each do |attribute|
    next unless self.respond_to?(attribute.to_sym) && self.respond_to?("#{attribute}=")
    value = type_handler.normalize(attribute)
    self.send "#{attribute}=", value
  end
end

#skip_normalize_blank_atttributes=(skip) ⇒ Object



55
56
57
# File 'lib/blank_attributes/blankable.rb', line 55

def skip_normalize_blank_atttributes=(skip)
  @skip_normalize = skip
end

#skip_normalize_blank_atttributes?Boolean



51
52
53
# File 'lib/blank_attributes/blankable.rb', line 51

def skip_normalize_blank_atttributes?
  @skip_normalize || false
end