Method: Ooor::TypeCasting#sanitize_attribute

Defined in:
lib/ooor/type_casting.rb

#sanitize_attribute(skey, value) ⇒ Object



104
105
106
107
108
109
110
111
112
113
114
115
116
117
# File 'lib/ooor/type_casting.rb', line 104

def sanitize_attribute(skey, value)
  type = self.class.fields[skey]['type']
  if type == 'boolean' && value == 1 || value == "1"
    true
  elsif type == 'boolean'&& value == 0 || value == "0"
    false
  elsif value == false && type != 'boolean'
    nil
  elsif (type == 'char' || type == 'text') && value == "" && @attributes[skey] == nil
    nil
  else
    value
  end
end