0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Ruby on Rails 変数params

Posted at

はじめに

備忘録です。
Ruby on Rails5 学習レッスン III ・URLからidを取得しようを学習中paramsがわからなかったのでそこら辺の知識をまとめます

Q変数paramsがなぜハッシュなのか

A、Ruby on Railsにおけるparamsがハッシュとなる理由は、HTTPリクエストに含まれるクライアントからの情報を扱いやすくするためです。

Webアプリケーションでは、ブラウザからのHTTPリクエストには様々な情報が含まれます。例えば、フォームから送信されたデータ、URL内のクエリ文字列、HTTPヘッダーなどがあります。これらの情報を扱うために、Railsではparamsという変数が使われます。

paramsはリクエストから送られてきた情報を取り出すための手段であり、その情報は通常ハッシュ(Hash)として提供されます。なぜなら、HTTPリクエストに含まれるデータはキーと値のペアの形式で渡されることが多いためです。

情報を受け取る流れ(ルーティングからコントローラ) 

例えば、以下のようなURLがあり:http://example.com/posts/1

また、config/routes.rbファイルで次のようにルーティングを設定した場合

get "posts/:id" => "posts#show"

config/routes.rbファイルではURLの「posts/1」のところを「:id」が受け取っている

そしてposts#showを用いてどのコントローラーのどのアクションを関連付けるかを示す。
ここでの"posts#show"とはpostコントローラーのshowアクション見てね、ということを示しています。

情報を受け取る流れ(paramsの役割)

コントローラのアクション内では、ルーティングで設定したURLの「:id」の値を取得することができます。その値はparamsという変数にハッシュとして入っています。
params[:id]とすることで、その値を取得することができます。

params自体がエンジニアがする前から、自動的にルーティングで受け取った「:id」の値を取得していたという事ですね・

終わりに

この備忘録はチャットGPTとprogateの解説を元に作成しました。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?