[TZInfo-users] Using TZ to convert to EST

Philip Ross phil.ross at gmail.com
Tue Nov 13 05:08:40 EST 2007

On 13/11/2007, John Sheahan <johnsheahan at charter.net> wrote:
> I then put the following under one of my definitions in my controller for
> the page I want the time to be displayed on:
>       tz = TZInfo::Timezone.get('America/New_York')
>      @local = tz.utc_to_local(Time.utc(2005,8,29,15,35,0))
> I was trying to call this in my view with this statement which doesn't work:
>     <td><%=@ local %></td>
> I'm obviously calling this incorrectly, would you have any suggestions?
> The error I'm getting in my log is:
> TZInfo::InvalidTimezoneIdentifier (Invalid identifier):
> /usr/local/ruby/lib/ruby/gems/1.8/gems/tzinfo-0.3.5/lib/tzinfo/timezone.rb:81:in
> `get'
>     /app/controllers/buy_controller.rb:28:in `indexadmin'

This error is raised by Timezone.get if the identifier passed in does
not match the following regular expression:


In the code you've posted above you have 'America/New_York' as the
identifier, which does match the expression. The above controller code
works fine.

Does line 28 of your buy_controller.rb use the hardcoded string
'America/New_York' or something else?

You also need to change your view to remove the space between @ and
local (although, this isn't causing the above error):

  <td><%=@local %></td>



Phil Ross
http://tzinfo.rubyforge.org/ -- DST-aware timezone library for Ruby

More information about the TZInfo-users mailing list