[英]Haml drop-down menu issue with Rails
form_for :radio, url(:radio, :add), :method => :put do |f|
= f.error_messages
%p
= f.label :title, :caption => "Radio Name:"
= f.text_field :title
%p
= f.select :city_name, XXXXXXXXXXXXXX
%p
= f.label :frequency
= f.text_field :frequency
%p
= f.label :url
= f.text_field :url
%p
= f.submit "Add", :class => 'button'
當我把XXXXXXXX作為
[['Hot','hot'],['Medium','medium'],['Cold','cold']]
甚至
City.all.map {|c| [c.city]}
我得到:
can't convert Array into Hash
任何幫助將不勝感激。
= f.select :city_name, City.all.map{ |c| [c.name, c.id] }
= f.select :city_name, City.all.map{ |c| [c.name, c.id] }
試試這個
您只需要將選項包裝在options_for_select
。 例如:
= f.select :city_name, options_for_select([['Hot','hot'],['Medium','medium'],['Cold','cold']])
data = %w/hot medium cold/.map { |s| [s.capitalize, s] }
= f.select :city_name, Hash[data]
散列[數據]
請在下面找到為我解決的問題
= f.select :city_name, :options => [["Delhi", "Delhi"], ["Mumbai", "Mumbai"], ["New York", "New York"], ["Punjab", "Punjab"]]
:options =>是關鍵...但是文檔為什么沒有提到這一點。 可能是因為gem版本不同。
謝謝大家的幫助。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.