2012-03-21 11 views
3

私の新しいウェブサイトの機能の一つに感謝します。Rails - ユーザーごとにtime_zoneを動的に設定する

これは、ユーザーが定義済みのtime_zones(us_zones)のセットから選択できる要件に従って動的なtime_zonesに関するものです。ユーザーがゾーンを選択すると、サイト全体がTimeZoneに設定/更新されます。

しかし、現在、新しいタイムゾーンはApacheに更新されておらず、タイムゾーンの更新はサーバーの再起動時にのみ発生します。

私はRails Initializerクラスとinitialize_time_zone()メソッドを使用していると考えていましたが、これでもレールサーバーを再起動する必要があります。

ありがとうございます!

答えて

3

置き、このようなアプリケーションコントローラ何かに:

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 
+0

ヒントのおかげで、同様のものを使用して、しかし、代わりに私は、このようなDateTime.now.in_time_zone( '・パシフィックとタイムゾーンを使用して行くと相殺されます時間(米国とカナダ) ')を提案[ここ](http://stackoverflow.com/questions/6060436/rails-3-how-to-get-todays-date-in-specific-timezone)定義されたタイムゾーン –

関連する問題