【Ruby初心者ど素人】エンジニア養成スクール学びメモ

本文中の仮説部分は外れのときもあり教材のキャプチャは著作権と情報漏洩の関係で載せていません

【事象】作成したテーブルを削除したい

【事象】作成したテーブルの削除したい

解決したいこと

不要なテーブルを削除したい

解決策

手順:モデルの削除→テーブルの削除

今回はtagsという名前のテーブルを削除したい (Sequel Proschema.rbを確認して削除したいテーブル名がまだ残っていることを確認)

対象箇所 

まずはモデルを削除する

tagsと関連しているモデル、models/tag.rbが存在していることを確認。

対象箇所 

rails destroy model 削除したいモデル名を実行

今回はmodels>tag.rbなのでrails destroy model tag

対象箇所 

モデルが削除されていることを確認

対象箇所 

削除用のマイグレーションファイルを作成

今回はわかりやすくdelete_tableというマイグレーションファイルにしました。

rails g migration delete_table

対象箇所 

作成したdelete_tableというマイグレーションファイルにdrop_table :削除したいテーブル名を記入。 今回はtagテーブルを削除するので以下の記載

drop_table :tags

対象箇所 

bundle exec rake db:migrateを実行

schema.rbからもテーブルが消えていることを確認。

対象箇所 

念のためSequel Proでも削除されていることを確認。

これでもうまく行かなかったら、まだそんなにテーブル作成していない状態であればrails db:migrate:resetマイグレーションをきれいにしてしまって削除した方が早い。