On 13/11/2007, John Sheahan <[EMAIL PROTECTED]> 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:
^[A-z0-9\+\-_]+(\/[A-z0-9\+\-_]+)*$
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><[EMAIL PROTECTED] %></td>
Regards,
Phil
--
Phil Ross
http://tzinfo.rubyforge.org/ -- DST-aware timezone library for Ruby
_______________________________________________
TZInfo-users mailing list
[email protected]
http://rubyforge.org/mailman/listinfo/tzinfo-users