旅好きエンジニアのメモ

旅のこと映画、統計、会計、プログラミングなど、気の向くままに語ります

rails4からrails5でインデックスの貼り方が変わった?

index貼りたいけどrails5になったらadd_indexで貼れなくて戸惑いましたw

rails4なら作られたテーブルに関してこんな感じ

class AddIndexToTestTables < ActiveRecord::Migration
  def change
    add_index :test_tables, :name
    add_index :test_tables, :name2
  end
end

rails5になるとcreate table時にこんな漢字で作るらしい。

class CreateTestTables < ActiveRecord::Migration[5.0]
  def change
    create_table :test_tables do |t|
      t.string :name
      t.string :name2
      t.index :name
      t.index :name2
    end
  end
end

indexの追加は以下のように配列でも可能です。

t.index [:name,:name2]

ちなみに、rails5はrakeコマンド基本的には使わないらしいですね。。。 (使えるっぽいですが。。。)

rails4ではこうですが。

rake db:migrate

rails5ではrailsコマンドっぽいです

rails db:migrate

いやぁ、バージョン移行するって大変ですね。。。

参考は下記ページ http://parrot.hatenadiary.jp/entry/2016/05/29/112331