Help us understand the problem. What is going on with this article?

【Rails】基本の7つのアクション

More than 1 year has passed since last update.

アクションとは

ざっくり言うと、コントローラ内のメソッドのこと

アクションを作成

コマンド内
rails g controller コントローラ名(コントローラ名は複数形の方が良い)

#例
rails g controller samples 
# => ファイルに「app/controllers/samples_controller.rb」が作成される

アクションは下記コントローラ内の「def index・・・end」や「def show・・・end」部分

samples_controller.rb
class SamplesController < ApplicationController

  def index
    #ビューに埋め込む変数を定義する(必ず「@」をつけること)
  end

  def show
    #ビューに埋め込む変数を定義する(必ず「@」をつけること)
  end

end

・アクションの役割:
①ブラウザに返すビューをviewsフォルダの中から見つけ出す役割
(コントローラと同名のビューフォルダから、アクションと同名のHTMLファイルを探してブラウザに返す)
②ビューに埋め込む変数を定義する

コントローラについては「【Rails】基礎:MVCモデルについて」を参照

基本の7つのアクションの役割について

Railsには基本となる7つのアクションがある。
役割を下記の通り
(ちなみにWorksテーブル、idが1の場合を想定)

アクション HTTPメソッド 役割 URLのパス
index get 一覧表示 /works
show get 詳細表示 /works/1
new get 新規作成 /works/new
create post 登録(新規作成して追加(保存)する) /works/create
edit get 編集 /works/1/edit
update patch/put(post) 更新 /works/1/update
destroy delete(post) 削除 /works/1/destroy

追記:CRUD

CRUDとは、C(Create)、R(Read)、U(Update)、D(Delete)。
上記の7つのアクションのHTTPメソッドは、CRUDに当てはまる。

CRUD名 意味 HTTPメソッド
Create データの作成 post/put(patch)
Read データの読み出し get
Update データの更新 put(patch)
Delete データの削除 delete
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away