Class: IndexGenerator

Inherits:
Rails::Generators::Base
  • Object
show all
Includes:
ActiveRecord::Generators::Migration
Defined in:
lib/generators/index/index_generator.rb

Instance Method Summary collapse

Instance Method Details

#column_strObject



23
24
25
26
27
28
29
# File 'lib/generators/index/index_generator.rb', line 23

def column_str
  if columns.size == 1
    columns.first.to_sym.inspect
  else
    columns.map(&:to_sym).inspect
  end
end

#copy_migrationObject



10
11
12
13
# File 'lib/generators/index/index_generator.rb', line 10

def copy_migration
  migrate_path = ActiveRecord::Tasks::DatabaseTasks.migrations_paths.first
  migration_template "index_migration.rb", "#{migrate_path}/add_index_on_#{columns.join('_and_')}_to_#{table}.rb"
end

#migration_versionObject



15
16
17
# File 'lib/generators/index/index_generator.rb', line 15

def migration_version
  "[#{ActiveRecord::VERSION::MAJOR}.#{ActiveRecord::VERSION::MINOR}]"
end

#table_strObject



19
20
21
# File 'lib/generators/index/index_generator.rb', line 19

def table_str
  table.to_sym.inspect
end