Подтвердить что ты не робот

Часовой пояс Rails от смещения

Таким образом, у рельсов довольно хорошая поддержка часовых поясов, но я столкнулся с требованием, которое, как я надеюсь, уже был решен, и я просто не вижу его в api.

Я бы хотел найти TimeZone на основе смещения. Причина в том, что я подключаюсь к api, который возвращает мне часовую зону пользователей в качестве смещения и не хочет заново изобретать колесо, поворачивая это смещение в Rails TimeZone, чтобы остальная часть приложения могла его правильно использовать.

Любые предложения? Спасибо за помощь!

4b9b3361

Ответ 1

Вы можете получить часовой пояс, используя метод [] на ActiveSupport::TimeZone. Вы можете передать имя часового пояса, смещение часа или второе смещение. Например:

ActiveSupport::TimeZone["America/Los_Angeles"]                              
 => (GMT-08:00) America/Los_Angeles
ActiveSupport::TimeZone[-8]                              
 => (GMT-08:00) America/Los_Angeles

Но имейте в виду, что смещение не эквивалентно часовому поясу, так как множественные часовые пояса могут быть на одном и том же смещении в любой день.