Rails 3: Как отформатировать дату на других языках, кроме английского? - PullRequest
3 голосов
/ 28 сентября 2011

Для форматирования Date на английском я делаю:

Date.today.to_s(:long_ordinal)   # => September 28th, 2011

Как мне отформатировать дату на русском (или любом другом языке)?

Ответы [ 3 ]

3 голосов
/ 28 сентября 2011

В Rails есть Интернационализация API , которая объясняет, как это сделать.См., Например, раздел 3.2 Добавление форматов даты / времени.

<p><%= l Date.today, :format => :short %></p>

Затем вы можете добавить для вашей локали (русский?) Файл ru.yml и включить туда определение вашего формата.

# config/locales/ru.yml
ru:
  date:
    formats:
      short: "%m/%d/%Y"

См. Раздел 4.4 Установка и передачаЛокаль, как установить локаль.

1 голос
/ 28 сентября 2011

Форматы даты и локали определены в ActiveSupport.Вы можете добавить эти значения в файл локали и изменить их в соответствии с вашими требованиями.
Также проверьте это для русского языка.

0 голосов
/ 28 сентября 2011

Использовать strftime . Пример:

Date.today.strftime('%m/%d/%Y')

Вы устанавливаете% -символы в соответствии с тем, как вы хотите отформатировать дату. См. Документацию, на которую я ссылался, чтобы узнать, какие символы вы можете использовать.

...