Rails 3, Интернационализация (I18n) - Перевести число в значение - PullRequest
1 голос
/ 01 июня 2011

У меня есть пользовательская таблица со столбцом уровня.Столбец уровня является числовым и имеет значение 0, 1 или 2.

В любом случае можно ли получить API-интерфейс для интернационализации (I18n) для преобразования числового значения таким образом, чтобы по-английски 0 = Foobar, 1 = Foo,2 = Бар?Тогда на другом языке 0,1,2 может вернуть что-то еще?

Спасибо

1 Ответ

0 голосов
/ 19 июня 2012

Я обнаружил, что вы можете сделать это, добавив в файлы локалей что-то вроде следующего:

en:
  user:
    level:
      '0': 'Admin'
      '1': 'Editor'
      '2': 'Contributer'

Затем в представлении:

<%= f.select :level, (0..2).to_a.map { |level| [t(level, :scope => 'user.level'), level] } %>

Возможно, есть лучший способ,но мне кажется, это хорошо работает!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...