努力弄清楚如何通过我的模板在标签中创建本地化月份列表。当我在模板中手工构建时,它在本地化月份工作得很好,但是寻找捷径来修剪我的代码。
这是给我带来麻烦的那个:
<%= select("month", "exp_month", (1..12).step(1).collect {|m| [ "date.month_names[#{m}]", m ] }) %>
它会创建一个有效的选择/选项列表,但值的字面意思是:
date.month_names[1]
date.month_names[2]
…
date.month_names[12]
这个手工编写的代码工作正常 - 但寻找更优雅的捷径:
<select>
<option value="01"><%=t("date.month_names")[1] %></option>
<option value="02"><%=t("date.month_names")[2] %></option>
<option value="03"><%=t("date.month_names")[3] %></option>
<option value="04"><%=t("date.month_names")[4] %></option>
<option value="05"><%=t("date.month_names")[5] %></option>
<option value="06"><%=t("date.month_names")[6] %></option>
<option value="07"><%=t("date.month_names")[7] %></option>
<option value="08"><%=t("date.month_names")[8] %></option>
<option value="09"><%=t("date.month_names")[9] %></option>
<option value="10"><%=t("date.month_names")[10] %></option>
<option value="11"><%=t("date.month_names")[11] %></option>
<option value="12"><%=t("date.month_names")[12] %></option>
</select>
我做错了什么?
答案 0 :(得分:0)
试试这个
<%= select("month", "exp_month", (1..12).collect {|m| [ t("date.month_names")[m], m ] }) %>