Module: Lite::Archive::SchemaStatement

Defined in:
lib/lite/archive/schema_statement.rb

Instance Method Summary collapse

Instance Method Details

#add_timestamps(table_name, **options) ⇒ Object



7
8
9
10
11
12
13
14
15
16
17
18
19
# File 'lib/lite/archive/schema_statement.rb', line 7

def add_timestamps(table_name, **options)
  options[:null] = false if options[:null].nil?
  options[:precision] ||= 6 if supports_datetime_with_precision?

  add_column(table_name, :created_at, :datetime, **options)
  add_column(table_name, :updated_at, :datetime, **options)

  return unless Lite::Archive.configuration.all_records_archivable == true
  return if options[:archive] == false

  options[:null] = true
  add_column(table_name, :archived_at, :datetime, **options)
end