Just do IT

思うは招く

Rails でテーブルを削除する方法

たとえば users テーブルを削除したいとき。

マイグレーションファイルを作る。「dropテーブル名」としたほうがわかりやすい。

$ rails g migration dropUsers

マイグレーションファイルではdrop_tableメソッドを使う。ブロック内にはもともとあったカラムを記述する。

class DropUsers < ActiveRecord::Migration[6.1]
  def change
    drop_table :users do |t|
      t.string :name
      t.string :email

      t.timestamps
    end
  end
end

そしてマイグレーションを走らせる。

$ rails db:migrate

以下のような方法でも削除できるが、上記のほうが何かあったときにロールバックできるので安心。

class Users < ActiveRecord::Migration[6.0]
  def change
    drop_table :users
  end
end