Usersリソース
ユーザー情報をアプリケーション上で表示するために、RESTアーキテクチャに従って、データの作成、表示、更新、削除をリソースとして扱う。
これらに対応する4つの基本操作(POST、GET、PATCH、DELETE)を各アクションに割り当てていく。
何がなんだかよく分からないが...
<id=1のユーザーを表示する場合>
URLは自動的に/users/1となる。
それに対してGETリクエストを送信すると、自動的にshowアクションが呼び出され、showビューが表示される。
みたいなことをRESTとやらが勝手にしてくれる、ということらしい。
細かいことは後で調べることにして、ルーティングに次のように書く。
config/routes.rb
Rails.application.routes.draw do
root 'static_pages#home'
get '/help', to: 'static_pages#help'
.
.
.
resources :users
end
すると次のようなHTTPリクエスト、URL、アクション、名前付きルートの関係が自動で構築される。
ルーティングはこの通りに自動で設定されるので、各アクションやビューを手動で作ればOKである。
ユーザー情報を表示するshowアクションと仮のビューを作る。
app/controllers/users_controller.rb
class UsersController < ApplicationController
def show
@user = User.find(params[:id])
end
def new
end
end
app/views/users/show.html.erb
<%= @user.name %>, <%= @user.email %>
これにより、/users/1にアクセスすると、params[:id]の:idに1が代入される。
findメソッドはid=1のユーザーをデータベースから探し、あれば@userに代入される。
@userのnameやemailは埋め込みRubyを使うことで、showビューで表示されるようになる。