[Rails入門] showアクションを分かりやすく解説!

Ruby on Railsを勉強している人

showアクションについて知りたいな!

上記のようなお悩みを持っている方はいないでしょうか?

この記事は上記のような疑問を解消するものとなっています。

この記事でお話すること
  • controllerにshowアクションメソッドを追加する
  • show.html.erbを作成する
  • ルーティング設定
  • index.html.erbを修正する
  • Ruby on Railsを学ぶことができるオススメの教材

Ruby on Railsでの「showアクションの使い方が分からない」、「showアクションの使い方をもっと知りたい」などお悩みを抱えている方はいないでしょうか?

このページでは基本的なshowアクションの使い方を分かりやすく解説していきます。

是非、最後まで読んでいただければと思います。

1.controllerにshowアクションメソッドを追加する

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

もし、上記のことを詳しく知りたい方は以下の記事をご覧ください。

railsではデータベースでデータを検索する場合、idを指定してデータを取り出すことが基本となっています。

idを指定してデータを検索するという一連の流れはshowアクションメソッド内に記述します。

ではcontroller内にあるposts_controller.rbにshowアクションメソッドを記述していきましょう。

上記ではshowアクションメソッド内でfindメソッドを使用して検索したいデータのidを取得するというコードが記述されています。

今回の場合、「@post = POST.find(params[:id])」と記述されていますが、以下の書式に合わせて記述することで簡単にデータ検索を行うことができます。

変数 = Model名.find(params[:id])

しかし、findメソッドを使用する上で一つ注意点があります。

findメソッドを使用して検索できるのはidのみとなっています。

id以外のカラムで検索したい場合、findメソッドではなく、find_by_sqlメソッド等を使用して複雑なSQLを記述する必要があります。

findメソッド内の引数はparams[:id]と指定されています。

これはidというパラメータを受け取って、パラメータの番号をもとに検索するという意味を持っています。

検索結果はPOSTクラスのインスタンスが返されます。

もっと詳しく知りたい方は是非「Ruby on Rails 6 超入門」をご覧ください!

Ruby on Rails 6 超入門」は入門者向け書籍でRailsの経験がなくてもわかりやすい本となっています!

 




2.show.html.erbを作成する

次はshowアクションメソッドに対応する「show.html.erb」というファイルを作成していきましょう。

viewsフォルダ内に「show.html.erb」ファイルを作成してコードを記述していきましょう。

上記のコードを記述し終わったら、「show.html.erb」は完成です。

もっと詳しく知りたい方は是非「Ruby on Rails 6 超入門」をご覧ください!

Ruby on Rails 6 超入門」は入門者向け書籍でRailsの経験がなくてもわかりやすい本となっています!

 




3.ルーティング設定

上記でshowアクションメソッドの作成、show.html.erbの作成を終えましたが、次にルーティング設定を行いましょう。

それでは「routes.rb」を開いて、ルーティング設定を行っていきましょう。

上記では「posts/:id」とアドレス指定がされています。

「:id」という部分にはid番号が当てはまります。

例えば、id番号が1のレコードには「https://…….post/1」という形でアクセスします。

もっと詳しく知りたい方は是非「Ruby on Rails 6 超入門」をご覧ください!

Ruby on Rails 6 超入門」は入門者向け書籍でRailsの経験がなくてもわかりやすい本となっています!

 




4.index.html.erbを修正する

これでshowアクションを使用することができるようになりましたが、最後にindexアクションからshowアクションに移動できるように修正しましょう。

以下のように「index.html.erb」のファイルを修正してみましょう。

「index.html.erb」ファイルは投稿内容のみが表示されていて、「SHOW」ボタンを押すと投稿詳細が見れるという構造になりました。

以下の図はindexアクションにアクセスした画面とshowアクションににアクセスした画面となります。

もっと詳しく知りたい方は是非「Ruby on Rails 6 超入門」をご覧ください!

Ruby on Rails 6 超入門」は入門者向け書籍でRailsの経験がなくてもわかりやすい本となっています!

 




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

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

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

現場で使える Ruby on Rails 5速習実践ガイド」はRuby on Railsの学習を一通り終えてある程度知識を身につけた方にオススメしたい本です。

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

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

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

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

Udemy

Udemy(ユーデミー)」ではRuby on Railsを学ぶことができる講座を多数取り扱っています。

Udemy(ユーデミー)」では頻繁にセールが行われており、時には半額以下(最大90%OFF)になることも。

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

プログラミングスクール

Ruby on Railsを学ぶことができるプログラミングスクール
  • TechAcademy:通過率10%の選考に合格した現役エンジニアから学べるオンラインに特化したプログラミングスクール。
  • DMM WebCamp:講師に質問し放題で効率的に学習。短期間のカリキュラムで確実に結果が出る。専属コーチ・アドバイザーが卒業まで伴走。
  • CodeCamp:あなたの目的に合わせた、最適な学習カリキュラム。
  • Tech Camp:未経験でも挫折せずテクノロジースキルが身につく。

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

無料体験を受けているうちに自分に合うサービスかどうか確認することができます。

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




6.ポイント

ポイント
  • idを指定して検索する処理はshowというアクションに用意します
  • findメソッドを使用することで特定のidのデータを取り出すことができます

コメントを残す

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