0

我正在尝试生成这个:

<select class="input-small">
   <option value="1">1+ bd</option>
   <option value="2">2+ bd</option>
   <option value="3">3+ bd</option>
   <option value ="4">4+ bd</option>
   <option value ="5">PH</option>
</select>

我试过这个:

<%= f.collection_select :num_bedrooms, ["1+ br", "2+ br", "3+ br", "4+ br", "PH"], [1, 2, 3, 4, 5], {}, {:class => "input-small"} %>

但这给了我这个:

TypeError at /    
Message {} is not a symbol

如何使用集合选择生成该选择标签?

谢谢。

编辑1:

这是@shrimpsushi 的答案产生的输出:

<select id="search_num_bedrooms" name="search[num_bedrooms]"><option value="<option value="1">1+ bd</option>
<option value="2">2+ bd</option>
<option value="3">3+ bd</option>
<option value="4">4+ bd</option>">collection</option>
<option value="input_html" class="input-small">input_html</option></select>  

"> collection</option>注意第四个选项之后的奇怪标签。更不用说input_html应用了类的选项值。

4

1 回答 1

2
<%= f.select :num_bedrooms, options_for_select({"1+ br" => 1, "2+ br" => 2}), {}, class: 'input-small' %>
于 2013-02-09T09:14:10.460 回答