schema.rbの内容が変だと思ったら


削除したブランチで作っていたテーブルがschemaから消えない。。なぜ。。
パニックになりメンターに質問しました。

結論これを打てば直りました。

rails db:migrate RAILS_ENV=test

データベースが3つ(開発環境、本番環境、テスト環境)ある中のテスト環境のデータベースと同じにしてくれるおまじないみたいなものだそうです。

そもそも、
テーブルの名前を変更するのはあまりよろしくない事!(壮大なアプリとかじゃない場合は作り直す事)
てかそもそもマイグレーションファイル作ってマイグレートしたらコミットしておく事!
マイグレーションファイルは手動では消しちゃダメな事!
と教わりました。

ちなみに

rails db:rollback STEP=2

と打てば最新から数えて2つ目までのmigrationファイルを編集できるようにdownできる

ちょっと間違えちゃった時とかはこのコマンド打って、migrationの中変えられる

schema.rbがこうなることはよくあることだと聞きました。
スクール生の間にいい経験になりました。。