Как вернуть текущий часовой пояс в RoR? - PullRequest
1 голос
/ 26 января 2010

Когда я использую возврат времени, когда была создана запись, он показывает это:

2010-01-20 15:04:40 UTC

но я хочу указать время в моем часовом поясе, например, в Китае. Есть ли удобный метод в RoR?

Ответы [ 2 ]

5 голосов
/ 26 января 2010

Настройте часовой пояс в config/environment.rb, чтобы Rails приводил все временные метки к этому часовому поясу.

config.time_zone = 'Berlin'

В качестве альтернативы вы всегда можете использовать что-то вроде

Time.utc(2000).in_time_zone('Alaska') 

См. Документацию здесь .

0 голосов
/ 26 января 2010

Посмотрите на классы TimeZone и TimeWithZone. Они добавляют поддержку часовых поясов. Также были добавлены некоторые классы Time и DateTime, которые также помогают работать с часовыми поясами. Документация приведена здесь: http://api.rubyonrails.org/classes/ActiveSupport/TimeWithZone.html.

Здесь также есть отличный пост с некоторыми дополнительными деталями: http://ryandaigle.com/articles/2008/1/25/what-s-new-in-edge-rails-easier-timezones

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