Method: Dynamoid::Tasks::Database#create_tables

Defined in:
lib/dynamoid/tasks/database.rb

#create_tablesObject

Create any new tables for the models. Existing tables are not modified.



8
9
10
11
12
13
14
15
16
17
18
19
20
# File 'lib/dynamoid/tasks/database.rb', line 8

def create_tables
  results = { created: [], existing: [] }
  # We can't quite rely on Dynamoid.included_models alone, we need to select only viable models
  Dynamoid.included_models.select{ |m| not m.base_class.try(:name).blank? }.uniq(&:table_name).each do |model|
    if Dynamoid.adapter.list_tables.include? model.table_name
      results[:existing] << model.table_name
    else
      model.create_table
      results[:created] << model.table_name
    end
  end
  results
end