странное отображение названия месяца - PullRequest
1 голос
/ 22 мая 2010

Я использую 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 

отображается правильно. Я нашел информацию, что это может быть вызвано файлом локали без перевода названий месяцев, но это так странно - почему помощники рельсов отображают названия месяцев нормально, а формально - нет

есть идеи?

1 Ответ

5 голосов
/ 22 мая 2010

Эти цифры являются кодами ASCII для "перевода m".Переводы для названий месяцев не были найдены, поэтому formtastic использует строку «translation missing ...» (индексы с 1 по 12) в качестве названий месяцев (где каждый символ рассматривается как элемент массива char).1002 * Чтобы это исправить, вам нужны переводы названий месяцев в файлах локалей, т. Е.:

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]
...