こりゃ便利!RailsのModelやControllerを削除する方法

Railsでdestroyを使う記事のアイキャッチ画像

こんにちは、@Yuuです。
ようやくRubyの書き方が少しずつ分かってきたかな、というまだまだRails初心者です。

さて、RailsでModelやControllerの作り方は簡単ですし、一番最初に学習するところですよね。
しかし作ったModelやControllerを削除するにはどうしたらいいのか?
以下のような時ですね↓

Modelの名前ミスって作っちゃった!
Controller間違えて作っちゃったYo!

おっちょこちょいの私にはよくあることです。
1日1回はこんなミスしてると思います。
そんな余談はいいとして、こういう時にどうやったら削除出来るか?というのを今回はご紹介したいと思います。

スポンサーリンク

ModelとControllerの作成

まずModelやControllerを作らないと話が進まないので、とりあえず作ります。

Modelを作成

まずModelから

「generate」は「g」と省略して書けるので以下のようにも書けますね。

このコマンドを行うとRailsが、以下のようにファイルを色々作成してくれます。

Controllerを作成

お次にController

こちらも同じく「generate」を省略出来るので

と書けます。

このコマンドを行うと、Modelの時と同じくRailsがファイルを色々作成してくれます。

ModelとControllerの削除

では本題のModelやControllerを削除する方法を書きます。
ModelやControllerを作成する時は「generate」というコマンドを使ったわけですが、削除する時は「destroy」というコマンドを使用します。

書き方もModelやControllerを作成する時とほとんど一緒。

Modelの削除

先程のModelを削除する時のコマンドがこちら。

そしてコマンドを実行すると先程作成してくれたファイルを削除してくれていることが分かります。

これはすごい!Rails賢い!(⌯¤̴̶̷̀ω¤̴̶̷́)✧

Controllerを削除

ControllerもModelの時と一緒。
先程のControllerを削除する際のコマンドがこちら。

そして削除されたファイルたち。

Modelの時と同じで、バッチリ作ったファイルを削除してくれてます。

destroyの注意点

ModelもControllerもほとんど「generate」を「destroy」にしただけで、削除が出来るというわけですね。
注意点としては、「destroy」は「d」と言った省略形はありません。
なので、以下のように書いた場合はエラーになります。

scaffoldは?

「じゃあscaffoldも削除出来るの?」と思って調べたら、scaffoldも同じでした。

「destroy」というコマンドについて調べたところ

説明 rails generateで自動生成したファイルを削除

railsコマンド(rails) - - Railsドキュメントより引用

destroyで「helper」や「migration」なども削除出来るようです。
なるほど、便利なコマンドですね!₍₍ (ง ˙ω˙)ว ⁾⁾

先程のサイトでは、その他に削除出来るものも一覧で出ていますので、是非参考にしてみて下さい。
(destroyが書かれているのはページ中程)

あとがき

Railsを始めた最初の頃は、scaffoldを使って作成した後に間違えていた場合、一々新しいファイルを作り、また一からscaffoldをやって全部作り直してましたw
今思えばdestroy使えば良かったんだなぁと思います。
むーん、もっと早く調べれば良かった(`‐ω‐´)

ではでは
今回はこの辺で!ヽ(•̀ω•́ )ゝ✧

Railsでdestroyを使う記事のアイキャッチ画像

この記事が気に入ったらいいね!
して最新情報をチェックしよう!

スポンサーリンク