- English
- 日本語
Ruby on Railsを知っている人
Ruby on Railsでの「showアクションの使い方が分からない」、「showアクションの使い方をもっと知りたい」などお悩みを抱えている方はいないでしょうか?
このページでは基本的なshowアクションの使い方を分かりやすく解説していきます。
是非、最後まで読んでいただければと思います。
\単月定額と比べて総額最大48,000円OFF!/
学び応援キャンペーン実施中!
【超安心】1か月間全額返金保証付き
以下のプログラミングスクールもオススメです。
是非検討してみてはいかがでしょうか?
- 侍テラコヤ(初月50%OFF学び応援キャンペーン実施中)(解説記事はこちら)
⇒ 学び応援キャンペーンでお得に申し込む!
・コスパ最高! 月額2,980円〜利用できる!
・単月定額と比べて総額最大44,400円OFF!
・学び応援キャンペーン実施中!
- TechAcademy
⇒ 無料体験レッスンに申し込む!
・Ruby/Ruby on Railsだけでなく、Git/GitHub、HTML/CSS、Bootstrap、SQL、Heroku、Web API、Vue.jsなど幅広く学ぶことができる
・今まで得た知識をアウトプットするために自分の作りたいWebサービスを作る
・無料体験レッスン実施中!
Ruby on Railsを知っている人
目次
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クラスのインスタンスが返されます。
show.html.erbを作成する
次はshowアクションメソッドに対応する「show.html.erb」というファイルを作成していきましょう。
viewsフォルダ内に「show.html.erb」ファイルを作成してコードを記述していきましょう。
上記のコードを記述し終わったら、「show.html.erb」は完成です。
ルーティング設定
上記でshowアクションメソッドの作成、show.html.erbの作成を終えましたが、次にルーティング設定を行いましょう。
それでは「routes.rb」を開いて、ルーティング設定を行っていきましょう。
上記では「posts/:id」とアドレス指定がされています。
「:id」という部分にはid番号が当てはまります。
例えば、id番号が1のレコードには「https://…….post/1」という形でアクセスします。
index.html.erbを修正する
これでshowアクションを使用することができるようになりましたが、最後にindexアクションからshowアクションに移動できるように修正しましょう。
以下のように「index.html.erb」のファイルを修正してみましょう。
「index.html.erb」ファイルは投稿内容のみが表示されていて、「SHOW」ボタンを押すと投稿詳細が見れるという構造になりました。
以下の図はindexアクションにアクセスした画面とshowアクションににアクセスした画面となります。
Ruby on Railsを学ぶことができるオススメの教材
Ruby on Railsを知っている人
Ruby on Railsを学ぶのにオススメの参考書をみていきましょう。
Ruby on Rails 6 実践ガイド impress top gearシリーズ
本書では、1つの企業向け顧客管理システムを作る過程で、RailsによるWebアプリケーション開発の基礎知識とさまざまなノウハウを習得していきます。
各章末には演習問題が設けられているので、理解度を確かめながら確実に読み進められます。
Ruby on Railsを知っている人
Ruby on Rails 6 実践ガイド[機能拡張編]
本書は、2019年12月に出版された『Ruby on Rails 6実践ガイド』の続編です。
本編で作成した企業向け顧客管理システムBaukis2の機能をさらに拡張し、実用性の高いシステムにしていきます。
本書のテーマは多岐にわたります。
クッキー、リクエスト元のIPアドレス、Ajax、データベーストランザクション、排他的ロック、ツリー構造のデータなど、さまざまなWebアプリケーションに必須の機能を実装しながら解説します。
また、この機能拡張編では、HTMLフォームのさまざまなバリエーションを紹介しています。
特にRailsで業務システムを開発する場合、要求仕様に応じて自由にHTMLフォームを設計・実装する力が求められます。
本書では、さまざまなフォーム設計の事例を扱っていますので、一種のレシピ集として活用できます。
Ruby on Railsを知っている人
パーフェクト Ruby on Rails 【増補改訂版】
新しいRailsのバージョンでサポートされた機能の紹介だけでなく、Dockerでの導入方法など最新の実践的内容を追加し、現在のトレンドとなる開発スタイルを紹介します。
Ruby on Railsを知っている人
まとめ
Ruby on Railsを知っている人
最後まで読んで頂きまして、ありがとうございました。
途中で分からないことがあり、中々進まないこともあると思います。
しかし、順を追って学習を進めていけば、必ずできるようになるのであきらめず最後までやりぬきましょう!