LoginSignup
29

More than 5 years have passed since last update.

マイグレーションファイルの役割と生成

Posted at

環境

  • IDE:Cloud9
  • Ruby:ruby 2.0.0p648
  • Rails:Rails 4.0.5

マイグレーションファイルとは?

マイグレーションファイルは、データベースを生成する際の設計図になる。マイグレーションファイルを実行することにより、その内容に基づいたデータテーブルを生成してくれる。実際にどのような記述があるのか確認していく。

マイグレーションファイルの生成

マイグレーションファイルを生成するコマンドは以下となる。

migrationファイルの生成
rails g migration マイグレーション名

モデルと一緒に生成するには以下のコマンドとなる

モデルと一緒に生成
rails generate model モデル名 カラム名:型 カラム名:型 ....

基本的にはモデルと一緒に生成し、必要に応じてマイグレーションファイルのみ追加生成といった使い方か?

マイグレーションファイルの中身

実際にrails generate modelでマイグレーションファイルを生成し、その中身を見ていく。今回はよくあるUserモデルを生成することにする。

UserModel
rails generate model User name:string age:integer
[年月日時分秒日付]_create_users
class CreateUsers < ActiveRecord::Migration
  def change
    create_table :users do |t|
      t.string :name
      t.integer :age

      t.timestamps
    end
  end
end

マイグレーションファイルの名前のは、頭に年月日時分秒日付が付き、複数形になる。
マイグレーションファイルの中身を作り終えたら、以下のコマンドで適用させなければならない。

マイグレーションファイルを適用
rake db:migrate

一度マイグレーションファイルを使用してテーブルを作ってしまうと、あとから同じマイグレーションファイルを変更しても反映されなくなるので注意が必要である。

課題

マイグレーションファイルの生成と中身の確認を行った。今後は実際にどのように編集をしていけばいいのか、モデルファイルとの関係性の確認などを勉強していきたい。

参考

http://maeharin.hatenablog.com/entry/20130212/rails_generate
https://qiita.com/zaru/items/cde2c46b6126867a1a64

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
29