Rails - динамическая установка time_zone согласно выбору пользователя - PullRequest
3 голосов
/ 21 марта 2012

Я ценю вашу помощь, одна из функций, работающих на моем новом сайте!

Это касается динамических часовых поясов в соответствии с требованиями, которые пользователь сможет выбрать из набора предварительно определенных часовых поясов, скажем, us_zones. Когда пользователь выбирает зону, весь сайт должен быть установлен / обновлен до TimeZone.

Однако в настоящее время новый часовой пояс не обновляется в Apache, и обновление часового пояса происходит только при перезапуске сервера.

Я думал о том, как использовать методы Rails Initializer и initialize_time_zone (), но даже для этого требуется перезапустить сервер rails.

Заранее спасибо!

1 Ответ

3 голосов
/ 21 марта 2012

Поместить в контроллер приложений что-то вроде этого:

def set_api_time_zone
  utc_offset = current_user_session && current_user_session.user ? current_user_session.user.time_zone_offset.to_i.minutes : 0
  user_timezone = ActiveSupport::TimeZone[utc_offset]
  Time.zone = user_timezone if user_timezone
end
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...