Rails change default time zone

Hello everyone,

I am using rails 3.2.8.
I want to change time zone to New York time.
I changed following, but didn’t work

#config/application.rb
config.time_zone = ‘Eastern Time (US & Canada)’
config.active_record.default_timezone = ‘Eastern Time (US & Canada)’

If am wrong please clarify.

Thank You!

Read. Rails Internationalization (I18n) API — Ruby on Rails Guides


Dheeraj K.

1.9.3-p286 :001 > Time.zone.now
=> Thu, 07 Feb 2013 06:34:49 UTC +00:00
1.9.3-p286 :002 > Time.zone = ‘Eastern Time (US & Canada)’
=> “Eastern Time (US & Canada)”
1.9.3-p286 :003 > Time.zone.now
=> Thu, 07 Feb 2013 01:35:00 EST -05:00

On 7 February 2013 05:54, Dheeraj K. [email protected]
wrote:

Read. Rails Internationalization (I18n) API — Ruby on Rails Guides

If that does not help then tell us what you mean by it not working.

Colin

On Thu, Feb 7, 2013 at 3:41 AM, Colin L. [email protected]
wrote:

On 7 February 2013 05:54, Dheeraj K. [email protected] wrote:

Read. Rails Internationalization (I18n) API — Ruby on Rails Guides

If that does not help then tell us what you mean by it not working.

To add: Just to make things clear if this is you. If you are thinking
that Rails will store the data inside of the db as your timezone it
won’t. Rails stores all times as UTC so they can be converted easily
no matter the system, the timezones only apply to the final object
created. You can also try just setting the city name (“New York”) and
see if that works though Eastern should work.

On 7 February 2013 10:10, Saravanan P [email protected]
wrote:

But i need to store each records in database with that time stamp. i.e

created_at and updated_at need to be EST, not in UTC.

Why? Don’t do it, always store it in UTC.

Case 2:
Also I need store all records created_at and updated_at with client
country time, if one client in NewYork, need to store their time and other
person in India, their time need to store.

Again why would you need to do that?

Colin

1.9.3-p286 :001 > Time.zone.now
=> Thu, 07 Feb 2013 06:34:49 UTC +00:00
1.9.3-p286 :002 > Time.zone = ‘Eastern Time (US & Canada)’
=> “Eastern Time (US & Canada)”
1.9.3-p286 :003 > Time.zone.now
=> Thu, 07 Feb 2013 01:35:00 EST -05:00

Above is working well.
Case 1:
But i need to store each records in database with that time stamp.
i.e
created_at and updated_at need to be EST, not in UTC.

Case 2:
Also I need store all records created_at and updated_at with client
country time, if one client in NewYork, need to store their time and
other
person in India, their time need to store.

Thank You!

On Thu, Feb 7, 2013 at 3:19 PM, Jordon B. [email protected]
wrote:

no matter the system, the timezones only apply to the final object


Regards by
Saravanan.P

Because my application will use in several country so I need to know
what
time they are creating records.

On Thu, Feb 7, 2013 at 3:45 PM, Colin L. [email protected]
wrote:

Case 1:
other
email to [email protected].
To post to this group, send email to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.


Regards by
Saravanan.P

On 7 February 2013 10:25, Saravanan P [email protected]
wrote:

Please don’t top post, it makes it difficult to follow the thread.
Insert your reply at appropriate points in previous message. Thanks.

Because my application will use in several country so I need to know what
time they are creating records.

You will know the time (in UTC). If you store updated_at, for
example, in the local timezone and you have one record with an
update_at of 12:00 and another 13:00 (for a different user) then you
would not know which came first. If they are all in UTC then you know
the exact time it actually happened.

Colin

http://www.elabs.se/blog/36-working-with-time-zones-in-ruby-on-rails

http://www.elabs.se/blog/36-working-with-time-zones-in-ruby-on-rails

On Thu, Feb 7, 2013 at 4:07 PM, Colin L. [email protected]
wrote:

update_at of 12:00 and another 13:00 (for a different user) then you

On 7 February 2013 10:10, Saravanan P [email protected]

Case 1:
country time, if one client in NewYork, need to store their time and
“Ruby on Rails: Talk” group.

On Thu, Feb 7, 2013 at 4:54 AM, Saravanan P [email protected]
wrote:

You will know the time (in UTC). If you store updated_at, for
example, in the local timezone and you have one record with an
update_at of 12:00 and another 13:00 (for a different user) then you
would not know which came first. If they are all in UTC then you know
the exact time it actually happened.

Yes Colin you are correct. I have to try using UTC time to show customer
their times. i.e Their recored created time.

Store their timezone as an extra field they themselves can set.

Time.now.in_time_zone(Time.find_zone(-7))

User.first.created_at.in_time_zone(Time.find_zone(-7))

You will know the time (in UTC). If you store updated_at, for
example, in the local timezone and you have one record with an
update_at of 12:00 and another 13:00 (for a different user) then you
would not know which came first. If they are all in UTC then you know
the exact time it actually happened.

Yes Colin you are correct. I have to try using UTC time to show customer
their times. i.e Their recored created time.

and

#106 Time Zones in Rails 2.1 - RailsCasts
http://www.elabs.se/blog/36-working-with-time-zones-in-ruby-on-rails
http://www.elabs.se/blog/36-working-with-time-zones-in-ruby-on-rails

Thanks for the reply

On Thu, Feb 7, 2013 at 4:09 PM, rajeevsharma86
[email protected]wrote:

example, in the local timezone and you have one record with an

Above is working well.
Also I need store all records created_at and updated_at with
You received this message because you are subscribed to the Google

To unsubscribe from this group and stop receiving emails from it, send
To unsubscribe from this group and stop receiving emails from it, send an

You received this message because you are subscribed to the Google G.
“Ruby on Rails: Talk” group.
To unsubscribe from this group and stop receiving emails from it, send an
email to [email protected].
To post to this group, send email to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.


Regards by
Saravanan.P