[Rails入門] destroyメソッドでデータ削除してみよう!

Ruby on Railsで「データの削除方法が分からない」、「データの削除方法をもっと知りたい」などお悩みを抱えている方はいないでしょうか?

このページではdestroyメソッドでデータ削除を行っていきたいと思います。

是非、最後まで読んで頂けたら幸いです。

このページはWebアプリケーションの作成、Modelの作成、indexアクションの作成を終えているという前提でお話を進めていきます。

データを削除する場合、削除処理を行うアクションを用意する必要があります。

まず始めに削除機能はindex.html.erbのテーブルに追加します。

それではindex.html.erbを修正していきましょう。

今回、テーブルの「EDIT」の横に「DELETE」という機能を追加しています。

上記は「DELETE」というリンクをクリックすると「/posts/delete/id」というアドレスに移動します。

このアドレスがデータ削除を行うアクションとなります。

削除するデータは「id」をアドレスにパラメータとしてつけて指定します。

以下は「DELETE」機能を追加したindex.html.erbの画面となっています。




2.controllerにdeleteアクションを追加

次にcontrollerにdeleteアクションを追加しましょう。

以下がdeleteアクションを追加したPostsControllerです。

deleteアクションではパラメータで送られてきたidを指定してPost.findを実行し、データをモデルのインスタンスとして取り出します。

その後、「destroy」メソッドを呼び出しています。

「destroy」メソッドはインスタンスを削除するものでデータベースからデータが削除されます。

destroyメソッドの使い方

<モデルのインスタンス>.destroy

上記はデータ削除の公式となっています。

データ削除はデータのモデルインスタンスを用意し、destroyを呼び出す仕組みになっています。




3.ルーティング設定

最後にルーティング設定を行っていきましょう。

route.rbファイルを開き、以下のソースコードを追記しましょう。

これで完成しました。

トップページにアクセスし、削除したいデータの「DELETE」リンクをクリックしてみましょう。

以下は削除する前のトップページの画面です。

それでは投稿内容「こんにちは!」を削除してみましょう。

「DELETE」リンクをクリックすると「こんにちは!」という投稿が削除されました。




4.CRUD

CRUDはデータ操作の基本となっています。

CRUDの意味は以下の通りです。

CREATE

CREATEはデータを作り、保存するという操作のことを指します。

READ

READはデータを読み込み、表示する操作のことを指します。

UPDATE

UPDATEはデータを変更し、更新する操作のことを指します。

DELETE

DELETEはデータを削除する操作のことを指します。

上記の4操作の頭文字から「CRUD」と呼ばれています。

CRUDの「D」は今回の記事で紹介している操作機能です。

上記の操作を搭載できれば基本的なWebアプリケーションになるかと思います。




5.Ruby on Railsを学ぶことができるオススメの教材

Ruby on Railsを学習している皆様にオススメの教材をご紹介させていただきます。

現場で使える Ruby on Rails 5速習実践ガイド

以下の本はRuby on Railsの学習を一通り終えてある程度知識を身につけた方にオススメしたい本です。

 

現場で使える Ruby on Rails 5速習実践ガイド」は現場で実際にどのように使われているのかという視点も交えて解説されています。

そのため、初心者の方が次のステップに進むために最適な本となっていますので、オススメです。

これらの本で是非学習を進めてみてはいかがでしょうか?

レベル別におすすめの本も紹介していますので、どのような本がオススメか知りたい方はこちらもご覧になって下さい。

【2022年最新版】Ruby on Railsを学ぶことができるおすすめの本/参考書

Udemy

UdemyではRuby on Railsを学ぶことができる講座を多数取り扱っています。

以下の記事でRuby on Railsを学ぶことができるオススメの講座をまとめていますので、よかったらご覧になって下さい。

【安すぎ】Udemy(ユーデミー)で学べるおすすめのRuby on Rails講座をご紹介!

プログラミングスクール

TechAcademyWebCampCodeCampTech CampなどでRuby on Railsを学ぶことができます。

それぞれ無料体験も行っているので、どのようなものか試してみるのもいいでしょう。

以下の記事で各プログラミングスクールをまとめているのでこちらもよかったらご覧になってください。

【働きながらOK】TechAcademy(テックアカデミー)の評判・口コミは? いくらなの? 【難しい?】働きながらOK! DMM WEBキャンプの評判・口コミは? 【課題が難しい?】CodeCamp(コードキャンプ)の評判・口コミは? 【無料体験実施中】テックキャンプ「プログラミング教養」でプログラミングをやってみた! 【体験談】テックキャンプ「プログラミング教養」の学習内容は? 働きながらテックキャンプで学ぶことは可能? 結論:可能です! 【無料カウンセリング実施中】テックキャンプではどのような言語・技術を学ぶことができるの? テックキャンプの受講料はどのくらい? 安く通う方法も解説! テックキャンプの受講料はどのくらい? 安く通う方法も解説! 【体験談/感想】テックキャンプでどのようなスキルが身につくの?




6.ポイント

destroyメソッドの公式

<モデルのインスタンス>.destroy

モデルのインスタンスを用意し、destroyを呼び出すことでデータを削除することができます。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です