Class: AttributeStats::GenerateMigration

Inherits:
Object
  • Object
show all
Defined in:
lib/migration_generator/generate_migration.rb

Instance Method Summary collapse

Constructor Details

#initialize(table_info: nil, options: {}) ⇒ GenerateMigration



3
4
5
6
# File 'lib/migration_generator/generate_migration.rb', line 3

def initialize(table_info: nil, options: {})
  @table_info, @options = table_info, options
  @table_info || set_table_info
end

Instance Method Details

#output_migrationObject



8
9
10
11
12
13
14
# File 'lib/migration_generator/generate_migration.rb', line 8

def output_migration
  return nil if migration_template.blank?
  File.open(migration_file_path, 'w') do |f|
    f.write(migration_template)
  end
  migration_file_path
end

#set_table_infoObject



16
17
18
19
20
# File 'lib/migration_generator/generate_migration.rb', line 16

def set_table_info
  stats_generator = AttributeStats::StatsGenerator.new(@options)
  stats_generator.send(:fetch_empty_attributes)
  @table_info = stats_generator.table_info
end