f.select helper - 如何传递除id之外的值

时间:2011-05-11 21:37:26

标签: ruby select field helper

我有这段代码:

<%= f.label :lang  %><br />
<%= f.select :lang_id, @langs %>

它生成类似的HTML:

<label for="entry_lang">Lang</label><br /> 
<select id="entry_lang_id" name="entry[lang_id]">
  <option value="pl">1</option>
  <option value="en">2</option>
</select> 

现在我希望用户可以看到“pl”和“en”,而不是整数。所以我试过了:

<%= f.label :lang  %><br />
<%= f.select :lang_name, @langs %>

它不起作用。怎么做对了?

1 个答案:

答案 0 :(得分:1)

看起来你的@langs数组格式为:

[[1, "pl"], [2, "en"], ....]

应该是相反的方式;首先显示名称,然后显示id:

[["pl", 1], ["en", 2], ....]