Great thanks! That's working nicely.

Will

On Jul 30, 12:42 pm, Philip Hallstrom <phi...@pjkh.com> wrote:
> On Jul 30, 2009, at 12:38 PM, Will wrote:
>
> > Hi,
>
> > I'm trying to use the ActiveSupport Time extension but running into a
> > bit of trouble with the time zone.
>
> > I'd like to test if a user record has expired using the Time .ago
> > method, such as:
>
> > def expired
> >  return true if self.activated < 1.day.ago
> > end
>
> > Unfortunately I can't seem to use the .ago method in the comparison
> > because it's using UTC time, whereas Time.now has my current time zone
> > (-0700).
>
> > will$ script/console
> > Loading development environment (Rails 2.3.2)
>
> >>> Time.now
> > => Thu Jul 30 12:16:30 -0700 2009
>
> >>> 1.hour.ago
> > => Thu, 30 Jul 2009 18:16:34 UTC +00:00
>
> > I can get around this by using something like "Time.now + 1.day" but
> > I'm interested to know what I'm doing wrong with the .ago method.
>
> > Maybe there's some sort of time zone setting that I've missed?
>
> Maybe.  I've never looked, but you can always tack localtime() onto it.
>
>  >> Time.now
> => Thu Jul 30 12:40:31 -0700 2009
>  >> 1.day.ago
> => Wed, 29 Jul 2009 19:40:31 UTC 00:00
>  >> 1.day.ago.localtime
> => Wed Jul 29 12:40:38 -0700 2009
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To post to this group, send email to rubyonrails-talk@googlegroups.com
To unsubscribe from this group, send email to 
rubyonrails-talk+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/rubyonrails-talk?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to