Method: SchildErweitert::SchildTypeSaver#create_null_object

Defined in:
lib/schild.rb

#create_null_object(klass, column) ⇒ Object



198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
# File 'lib/schild.rb', line 198

def create_null_object(klass, column)
  k = Schild.db.schema_type_class(klass.db_schema[column][:type])
  if k.class == Array
    # Sequel stellt :datetime als [Time, DateTime] dar, deswegen die Abfrage nach Array
    # Schild verwendet Time Objekte, wir machen das auch
    Time.new(1899)
  elsif k == Integer
    0
  elsif k == Float
    0.0
  else
    # alle anderen types werden als Klasse zurückgegeben
    k.new
  end
end