1.week.ago.in_zone (Time.zone) для Rails? - PullRequest
6 голосов
/ 21 марта 2011

Есть ли способ использовать эти необычные вспомогательные методы времени в определенных часовых поясах, не делая этого?

Time.use_zone(Time.zone.name) { 1.week.ago }

К какому классу (ам) я должен добавить метод in_zone, чтобы я мог делать следующее, не вызывая слишком много путаницы?

1.week.ago.in_zone(Time.zone.name)

Или это уже встроено? Мне интересно, потому что я использую Time.zone.now везде и хотел бы более простой способ сделать это в других случаях.

1 Ответ

14 голосов
/ 21 марта 2011

Rails имеет метод с именем in_time_zone, который делает это для вас. Работает на любом Time, Date или ActiveSupport::TimeWithZone объекте.

1.week.ago.in_time_zone("Tokyo")

Вы можете получить список всех доступных часовых поясов, набрав:

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