カテゴリー
サインイン 新規登録

間違いや改善の指摘

内容の技術的な誤り・誤字脱字やミスのご報告・解説やトピックの追記/改善のご要望は教材をさらに良くしていく上でとても貴重なご意見になります。

少しでも気になった点があれば、ご遠慮なく投稿いただけると幸いです🙏

実際には誤りではなく勘違いであっても、ご報告いただけることで教材のブラッシュアップにつながります。

質問ポリシー①

教材受講者みなさんのスムーズな問題解決のために、心がけていただきたいことがあります。

教材の内容に関する質問を投稿しましょう

教材の内容に関係のない質問や教材とは異なる環境・バージョンで進めている場合のエラーなど、教材に関係しない質問は推奨していないため回答できない場合がございます。

その場合、teratailなどの外部サイトを利用して質問することをおすすめします。教材の誤字脱字や追記・改善の要望は「文章の間違いや改善点の指摘」からお願いします。

3-4

コントローラーを作成しよう

ルーティングによってひもづけられた処理の内容を定義するコントローラーを作成します。

コントローラーの名称は先程設定したルーティングでtopと指定したので、topコントローラーを作成していきます。

コントローラーはルーティングからリクエストを受け取り、データをモデルから取得したりモデルに保存するなどの作業を行い、最後にビューを使用してHTML出力を生成します。

topコントローラーの作成

コントローラーは「rails g controller コントローラー名」というコマンドで作成出来ます。以下のコマンドを実行してください。

console
Copied!
rails g controller top

上記のコマンドを実行するとターミナルに下記のような実行結果が表示されます。

console
Copied!
rails g controller top Running via Spring preloader in process 75777 create app/controllers/top_controller.rb invoke erb create app/views/top invoke test_unit create test/controllers/top_controller_test.rb invoke helper create app/helpers/top_helper.rb invoke test_unit invoke assets invoke scss create app/assets/stylesheets/top.scss

作成したコントローラーにアクションを追加

次に作成したコントローラーにアクションを追加していきます。ルーティングが実際に処理するのはコントローラーに作成されたアクションです。

まず先ほど追加したルーティングを確認してみましょう。

名前付きヘルパー HTTP動詞 パス コントローラー#アクション
top_index GET /top/index top#index

今回の場合はtop#index、つまりtopコントローラーのindexアクションを処理するように指定しています。なのでtopコントローラーにindexアクションを作成していきましょう。

app/controllers/top_controller.rbに以下のコードを追加してください。

app/controllers/top_controller.rb
12345678
Copied!
class TopController < ApplicationController # ==========ここから追加する========== def index end # ==========ここまで追加する========== end

今回はトップページを表示させるだけで、特にデータベースからデータを取ってくるわけではないのでindexアクションの中には何も書かないです。

以上で今回のパートは終了です。

お疲れさまでした。