aboutsummaryrefslogtreecommitdiffstats
path: root/railties/lib/rails_generator/generators/components/migration/migration_generator.rb
blob: 3dff3bf396f665b077826948be5fc8fbcee9e37e (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
class MigrationGenerator < Rails::Generator::NamedBase
  def manifest
    record do |m|
      m.directory File.join('db/migrate')
      existing_migrations = Dir.glob("db/migrate/[0-9]*_#{file_name}.rb")
      raise "Another migration already exists with the same name" unless existing_migrations.empty?
      next_migration_number = Dir.glob("db/migrate/[0-9]*.rb").size + 1
      m.template 'migration.rb', File.join('db/migrate', "#{next_migration_number}_#{file_name}.rb")
    end
  end
end