はじめに
railsを使うならほぼ確実に使うであろう"rails g(generate)"コマンドですが、model名を間違えて記述してコマンドを叩いてしまったら修正するのに時間がかかるな。。と思って毎回このコマンドを叩く際に毎回少し緊張していました。
今回"rails g"を取り消すコマンドの存在を知ったので備忘録として残そうと思います。
rails destroy
"rails g"コマンドを取り消すためには、"rails destroy"コマンドを使用します。
#rails g modelコマンドを取り消したいの場合
bundle exec rails destroy model モデル名
#rails g controllerコマンドを取り消したいの場合
bundle exec rails destroy controller controller名
"rails g"の箇所を"rails destroy"に変更してコマンドを叩くだけで簡単に削除をすることができます。
失敗しても戻し方がわかるとストレスが激減しますね。
ちなみに実際に削除した際の挙動は下記になります。
quizを複数形にし忘れてファイルを作成してしまい、削除したい時に叩いたコマンドです。
~# bundle exec rails generate controller quiz
Running via Spring preloader in process 349
create app/controllers/quiz_controller.rb
invoke rspec
create spec/requests/quiz_spec.rb
~# bundle exec rails destroy controller quiz
Running via Spring preloader in process 360
remove app/controllers/quiz_controller.rb
invoke rspec
remove spec/requests/quiz_spec.rb
参考