我正在使用formtastic,一切都很好,但奇怪的是 - 在
= form.input :birthdate, :as => :date
它呈现类似
的东西<li><label for="profile_birthdate_2i">Month</label><select
id="profile_birthdate_2i" name="profile[birthdate(2i)]">
<option value="1">114</option>
<option value="2">97</option>
<option value="3">110</option>
<option value="4">115</option>
<option value="5">108</option>
<option value="6">97</option>
<option value="7">116</option>
<option value="8">105</option>
<option value="9">111</option>
<option value="10">110</option>
<option value="11">32</option>
<option value="12">109</option>
</select>
但如果我在semantic_form中使用类似
的东西= form.datetime_select :birthdate
它正确呈现。我发现信息,它可能是由月份名称没有翻译的语言环境文件引起的,但是它很奇怪 - 为什么rails帮助器使月份名称正常,但是formtastic - 不是:(
任何想法?
答案 0 :(得分:5)
这些数字是“ranslation m”的ASCII码。未找到月份名称的翻译,因此formtastic使用字符串“translation missing ...”(索引1到12)作为月份名称(其中每个字符被视为char数组中的项目)。
要解决此问题,您需要在语言环境文件中翻译月份名称,即:
en:
date:
month_names: [~, January, February, March, April, May, June, July, August, September, October, November, December]
abbr_month_names: [~, Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec]