Module: Defaults::InstanceMethods

Defined in:
lib/defaults.rb

Instance Method Summary collapse

Instance Method Details

#default_for(name) ⇒ Object



27
28
29
30
31
32
33
34
35
36
37
# File 'lib/defaults.rb', line 27

def default_for(name)
  if self.class.default_options.key?(name.to_sym)
    value = self.class.default_options[name.to_sym]
    value = value.arity == 1 ? value.call(self) : value.call if value.respond_to?(:call)
  else
    column_info = self.class.columns_hash[name.to_s]
    value = column_info.type_cast_from_user(column_info.default) if column_info
  end

  value
end