【Ruby】コントローラーの役割
一つ前の記事ではルーティングで、リクエストとその行先を定義しました。
コントローラーではリクエストに対する処理を定義します。
ここでリクエストに対応する処理をまとめて用意しておきます。
そしてその処理が実行された後に、レスポンスとしてクライアントに返すまでがコントローラーの役割になります。
では定義方法をみていきましょう。
その前にコントローラーファイルを作成します。
# コントローラーを作成 % rails g controller コントローラー名
この時コントローラー名は複数形を使用します。
これはこういう決まりだと覚えておきましょう。
早速作成したファイルに、アクションを用意していきます。
このアクションとは「処理」のことです。
どんな処理を行うかを書いていくということです。
アクションは以下のカテゴリーに分類されます。
アクション名 | どのような時に動くか |
---|---|
index | 一覧表示ページを表示するリクエストに対応して動く |
new | 新規投稿ページを表示するリクエストに対応して動く |
create | データの投稿を行うリクエストに対応して動く |
show | 個別詳細ページを表示するリクエストに対応して動く |
edit | 投稿編集ページを表示するリクエストに対応して動く |
update | データの編集を行うリクエストに対応して動く |
destroy |
データの削除を行うリクエストに対応して動く |
今回はトップページを表示させたいので、indexアクションを用います。
コントローラーにインスタンスメソッドとして定義します。
class PostsController < ApplicationController def index # indexアクションを定義した end end
以上でルーティングした、
「GETメソッドがpostsというパスに送られてくたら、
postsコントローラーのindexアクションを呼び出してね」
という設定が完了しました。
これでトップページを表示させようというところまでいきます。
でも、このままではそのトップページがない。
次はビューファイルの用意が必要です。
処理の流れの次の段階、ビューを整備していきましょう。