selectタグの使い方
- controller
@places = Place.find(:all)
- view
<%= f.select :place, @places.collect{|p| [p.name, p.id ]} %>
p.nameがselectで表示される文字列で、p.idがvalueに入ります。
会社の同僚の人が悩んでたみたいなので書いてみる。
select(method, choices, options = {}, html_options = {} )なので
choicesの中にハッシュで渡してあげれば良いので
<%= f.select :place, [["name1", 1],["name2", 2]] %>
とかでも良かったりします。
後、上のplacesから選択させる目的だと
<%= f.select :place, Place.find(:all).collect{|p| [p.name, p.id]} %>
でも良いしね。
ちなみに逆にしても特にエラーにはならず、idを選んでnameをパラメータとして送る
困ったちゃんになるとゆー。