method
zone=
rails latest stable - Class:
Time
zone=(time_zone)public
Sets Time.zone to a TimeZone object for the current request/thread.
This method accepts any of the following:
-
An identifier for a Rails TimeZone object (e.g., “Eastern Time (US & Canada)”, -5.hours).
-
A +TZInfo::Timezone+ object.
-
An identifier for a +TZInfo::Timezone+ object (e.g., “America/New_York”).
Here’s an example of how you might set Time.zone on a per request basis and reset it when the request is done. current_user.time_zone just needs to return a string identifying the user’s preferred time zone:
class ApplicationController < ActionController::Base around_action :set_time_zone def set_time_zone if logged_in? Time.use_zone(current_user.time_zone) { yield } else yield end end end