RubyOnRailsのテーブルの作り方
RubyOnRailsのテーブルを作成するには、
$ rails g model テーブル名 カラム名:データ型と記述します。
このときマイグレーションファイルが自動作成されます。
マイグレーションファイルの中身は以下のような感じになっています。↓
class CreatePosts < ActiveRecord::Migration[5.0] def change create_table :posts do |t| t.text :content t.timestamps end end end
railsコマンドでrails g modelを実行するとマイグレーションファイルのchangeメソッドにテーブルを作成する構文が自動的に記述されます。
次ぐに$rails db:migarateを実行するとテーブルが作成されます。
作成済みのテーブルに変更を加える方法
railsで作成したテーブルにカラムを追加したいといったことがでてくると思います。
テーブルに変更を加えるにはマイグレーションファイルを新に作成します。
$rails g migration ファイル名コマンドを実行するとマイグレーションファイルが作成されます。
このときマイグレーションファイルのchangeメソッドの中身が空になっています↓
class AddImageNameToUsers < ActiveRecord::Migration[5.0] def change end end
空のchangeメソッドにカラムを追加する構文を記述します。カラムを追加するには add:columnを使用します。
add_column :テーブル名, :カラム名, :データ型と記述します。
class AddImageNameToUsers < ActiveRecord::Migration[5.0] def change add_column :users, :image_name, :string end end
changeメソッドにカラムを追加する構文を書き終わったら、
ターミナルで$rails db:migrateコマンドを実行します。これでテーブルにカラムが追加されま
す。
Railsのテーブルに変更を加える方法まとめ
- ターミナルで$rails g migrationコマンドを実行しカラム追加用のマイグレーションファイルを作成する
- マイグレーションファイルchangeメソッドに add:column 構文を記述する
- changeメソッドの定義が済んだらターミナルで$rails db:migrateを実行し変更を反映する
以上です。
コメント