7つのアクションって、7人の侍みたいでかっこいいですよね。
Railsで何かプロジェクトを立てる際に基本となるとても重要な概念です。
「7つ」と厳密に定義されていることを今まで知らなかったので、以下にまとめます。
そもそもアクションとは
controllerで定義されるメソッドを指してアクションと呼びます。
def index
〜
〜
end
こういうやつです。
他にも、routeファイルでは
get "URL/〜/" => "コントローラ名#アクション名"
<例>
get "users/index" => "users#index"
左のURLでリクエストを受けたら、右のコントローラの中の、このアクションを見に行くよと書かれていたりします。
7つのアクション
アクション名 | 役割 |
---|---|
index | リソースの一覧を表示する |
new | リソースを新規作成する |
create | リソースを新規作成して追加(保存)する |
edit | リソースを更新するためのフォームを作成する |
show | レコードの内容を表示する |
update | リソースを更新する |
destroy | リソースを削除する |
routesファイルに記述する際に、resource
メソッドを記述することで
この7つのアクションをスマートに記述することができたり、
apiモードでは、newとeditが省略されて5つのアクションになったりします。
resource
メソッドの書き方とapiモードについては、
別の記事で改めてまとめようと思います。
参考サイト
Railsのリソースの7つのアクション
https://code-examples-ja.hateblo.jp/entry/2014/02/22/Rails%E3%81%AE%E3%83%AA%E3%82%BD%E3%83%BC%E3%82%B9%E3%81%AE7%E3%81%A4%E3%81%AE%E3%82%A2%E3%82%AF%E3%82%B7%E3%83%A7%E3%83%B3
newとcreateの違い
https://qiita.com/Kaisyou/items/7d609787d4ae8c2425a0
new,save,createアクションそれぞれの使い分け
https://teratail.com/questions/20276