In almost every environment.rb, there’s a line for config.time_zone = 'UTC'.
What exactly does this line do, and under what circumstances would I want to change it (to, e.g., config.time_zone = 'EST')?
Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.
Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.
Lost your password? Please enter your email address. You will receive a link and will create a new password via email.
Please briefly explain why you feel this question should be reported.
Please briefly explain why you feel this answer should be reported.
Please briefly explain why you feel this user should be reported.
Setting
config.time_zonechanges the default time zone for your Rails application. This is the time zone all times will be displayed in to your users. It is also the time zone it assumes when setting attributes.However, Rails will always store the times in UTC in the database. The translation happens behind the scenes so (most of the time) you don’t have to worry about it.
It’s common to change this time zone to one that most of your users will be in. You can run this rake task to see all time zones you can choose from.
It is also very easy to change the current time zone on a per-request basis allowing each user to configure which time zone they are in. here’s a before filter example you might add to the application controller.
See this Railscasts episode for more information.