Railsのマイグレーションファイルを既存のスキーマ、データベースを元に作成

開発中に増えすぎたマイグレーションを削除して、既存のスキーマあるいはデータベースから全てのテーブルを作成するクリーンなマイグレーションを作成する手順。

■スキーマをデータベースに反映
schema.rbを正とする場合はschema.rbの内容をデータベースに反映しておく。
既存のデータベースを正としたい場合は行ってはいけない。
rake db:schema:load

■既存のデータベースからスキーマファイルを生成
schema.rbの内容に関わらず、現在の開発用データベースのスキーマがschema.rbとして保存される。
rake db:schema:dump

■マイグレーションファイルの作成
作成されたschema.rbの内容をマイグレーションファイルとして保存し、マイグレーションする。
rails g migration create_tables
create db/migrate/20140529034706_create_tables.rb
# 作成されたマイグレーションファイルにschema.rbの内容をコピー
# create_table "users:....
rake db:migrate
posted by digital-squad at 2014年05月29日 12時49分 | Comment(0) | TrackBack(0) | Ruby on Rails / Ruby
この記事へのコメント
コメントを書く
お名前: [必須入力]

メールアドレス:

ホームページアドレス:

コメント: [必須入力]

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。
※ブログオーナーが承認したコメントのみ表示されます。
この記事へのトラックバックURL
http://blog.seesaa.jp/tb/398190260
※ブログオーナーが承認したトラックバックのみ表示されます。
※言及リンクのないトラックバックは受信されません。

この記事へのトラックバック