#Railsでセレクトタグの生成
今回、ECサイトの買い物かご的な物を再現してみようと思い作成していた所、少々分かりづらかった所があったので記事にしてみました。
#select_tag
Rails ドキュメント
http://railsdoc.com/references/select
ここに説明が載っているものの、僕には理解が難しかった・・・
#select_tagの使い方
ドキュメントには、
select_tag(要素名, タグを表す文字列 [, オプション])
の様に書かれていました。
色々試してみた所、要素名の所で指定した値がname属性として送信され、
params[:要素名]
で値を取得できるようです。
#値の作成
Railsドキュメント
http://railsdoc.com/references/options_for_select
セレクトタグの値を作成する場合は、options_for_selectを使います。
<%= select_tag("num", options_for_select((タグの配列 or ハッシュ)) %>
とすることで値を設定できます。
今回は1から100までの値を設定したので、
<%= select_tag("num", options_for_select((1..100)) %>
この様に記述しました。
#selected設定
今回は、買い物かごの作成ということだったので、購入予定の個数設定をしておかなくてはならないためselected指定をする必要がありました。
これは、options_for_selectの:selectedオプションを使用することで可能になります。
そのため、options_for_selectの第2引数に
<%= select_tag("num", options_for_select((1..100) ,
:selected => item.item_number) ) %>
とすることで、購入予定数をselected指定しました。
上記の様に、
:selected => 値
とすることで、指定ができます。
#感想
ドキュメントを読むのは難しい・・・
言葉の定義など、理解があいまいな部分が多く、
用語を明確に覚える必要があると感じた。