Rubyでrespon_doを使いメソッド数を調べる方法を現役エンジニアが解説【初心者向け】

初心者向けにRubyでrespon_doを使いメソッド数を調べる方法について現役エンジニアが解説しています。respond_toとはRuby on Railsでのみ利用できる返答を返すようにするメソッドです。データの作成や編集や削除、メール送信などを行った場合に使います。

TechAcademyマガジンは受講者数No.1のオンラインプログラミングスクールTechAcademy [テックアカデミー]が運営。初心者向けに解説した記事を公開中。現役エンジニアの方はこちらをご覧ください。

Rubyでrespon_doを使いメソッド数を調べる方法について、TechAcademyのメンター(現役エンジニア)が実際のコードを使用して初心者向けに解説します。

Rubyについてそもそもよく分からないという方は、Rubyとは何なのか解説した記事を読むとさらに理解が深まります。

 

なお本記事は、TechAcademyのオンラインブートキャンプ、Ruby講座の内容をもとに紹介しています。

田島悠介

今回は、Rubyに関する内容だね!

大石ゆかり

どういう内容でしょうか?

田島悠介

Rubyでrespon_doを使いメソッド数を調べる方法について詳しく説明していくね!

大石ゆかり

お願いします!

 

目次

 

respond_toとは

respond_toとはRuby on Railsでのみ利用できるブロックで記述されるメソッドです。

送信などの結果を知りたい場合に、簡易的に返答を返すようにするメソッドなので使い勝手がよく、フォームの送信などでは必ず使われるメソッドです。

[PR] Rubyのプログラミングで挫折しない学習方法を動画で公開中

respond_toを使うメリットとよく使われるケース

respond_toが良く使われるケースはセッションページのログインの成功や失敗などの結果の返答があります。

他には、お問い合わせフォームやアンケートなどを送信をした場合に、「成功しました」や「失敗しました」などのメッセージを表示させる場合にも多く利用されています。

404エラーの画面などを用意することも出来ますが、respond_toを使えば結果の文字テキストを簡易的に標示することができます。

一つのメソッドの中に条件分岐によって記述することが出来るため、別のページを用意すること無く、結果が分かります。

エラーなど送信が失敗となった場合には、renderメソッドなどで再度入力画面を標示することになりますが、respond_toで結果の文字を同時に表示することで、ユーザーは「送信が失敗したから入力画面に戻った」ことが分かるようになります。

実際に書いてみよう

(app/controllers/tests_controller.rb)

def create
 @test = Test.new(test_params)

respond_to do |format|
  if @test.save
   format.html { redirect_to @test, notice: '成功しました!' }
  else
   format.html { render :new }
  end
 end
 end

まとめ

今回は新規に作成した場合に返答が返ってくるようにしましたが、編集や削除などをした場合にもそれぞれ「編集が完了しました」や「削除しました」などが返ってくるようにすることが出来ます。

場面によって使い分けて記述していくことで、ユーザビリティの向上となるように記述していくことも大切です。

筆者プロフィール

木村勇土

TechAcademyの現役メンター。

現在は行政書士事務所を運営しており、お客様にはプログラマーやフリーランサーも多い。
WordPressを中心とした自社のWebサイトの修正などを行なっている。

 

大石ゆかり

内容分かりやすくて良かったです!

田島悠介

ゆかりちゃんも分からないことがあったら質問してね!

大石ゆかり

分かりました。ありがとうございます!

 

TechAcademyでは、初心者でも最短4週間で、Ruby on Railsを使ったプログラミングを習得できる、オンラインブートキャンプを開催しています。

また、現役エンジニアから学べる無料体験も実施しているので、ぜひ参加してみてください。