0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

migrateしてしまったモデルとテーブルの削除方法

Posted at

#はじめに
モデルを作成してマイグレーションしてから、作成されたモデルとテーブルを削除する必要があったので、その時の手順を残しておきます。

#削除手順
①モデル作成時のファイルを削除する。
②削除用のファイルを新規作成する。
③削除用のファイルに削除したいテーブルを記載。
④マイグレーションして、削除を行う。

①モデル作成時のファイルを削除する。
まず以下を入力して、該当モデル作成時のファイルを削除します。
今回は、クチコミサイト作成時商品にカテゴリを付与したいと考えたので、categoryモデルを作成して、categoriesテーブルが作成されていると仮定します。

rails destroy model category

②削除用のファイルを新規作成する。
次にテーブル削除するために新規でマイグレーションファイルを作成します。(GI上では削除できないため)
以下を記載します。

rails generate migration 任意のファイル名

ファイル名は後に削除するので何でも構いません。
ここでは、「delete_category_table」としておきます。

③削除用のファイルに削除したいテーブルを記載。
マイグレーションファイルを開いて、以下を記載します。

delete_category_table.rb
class DeleteCategoryTable < ActiveRecord::Migration[5.2]
  def change
   drop_table :categories  ←drop_table :削除したいテーブルを記載
  end
end

④マイグレーションして、削除を行う。
最後はマイグレーションして、テーブルの削除を反映させます。

rails db:migrate

以上となります。

#終わりに
当初はテキストエディタ上で右クリック→deleteで削除した気になっていました。
当然それではきちんと削除されている訳なく…。
しっかりと根本から削除する必要があるのだなと学びました。

0
0
0

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
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?