Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Migrate multiple tables with similar schema at once
Ruby
branch: master

This branch is 1 commit ahead, 4 commits behind winton:master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
config
lib
rails
spec
.gitignore
LICENSE
README.md
Rakefile
also_migrate.gemspec
init.rb

README.md

AlsoMigrate

Migrate multiple tables with similar schema at once.

Requirements

gem install also_migrate

Configure

AlsoMigrate.configuration = [
  {
    :source => 'articles',
    :destination => 'article_archives',
    :add => [
      # Parameters to ActiveRecord::ConnectionAdapters::SchemaStatements#add_column
      [ 'deleted_at', :datetime, {} ]
    ],
    :subtract => 'restored_at',
    :ignore => 'deleted_at',
    :indexes => 'id'
  },
  {
    :source => 'users',
    :destination => [ 'banned_users', 'deleted_users' ]
  }
]

Options:

  • source Database schema source table
  • destination Database schema destination table (can also be an array of tables)
  • add Create columns that the original table doesn't have (defaults to none)
  • subtract Exclude columns from the original table (defaults to none)
  • ignore Ignore migrations that apply to certain columns (defaults to none)
  • indexes Only index certain columns (duplicates all indexes by default)

That's it!

Next time you migrate, article_archives is created if it doesn't exist.

Any new migration applied to articles is automatically applied to article_archives.

Something went wrong with that request. Please try again.