TimeZone['Madrid'].adjust(Time.now) me marca 1h de menos


#1

Hola a todos,

¿Qué se me ha pasado?

Gracias.


#2

On 5/25/07, Héctor removed_email_address@domain.invalid wrote:

Hola a todos,

¿Qué se me ha pasado?

La clase TimeZone de Rails es bastante cutre y no tiene en cuenta el
horario de verano (el Daylight Saving Time), así que durante 6 meses
métodos como adjust dan mal la hora :frowning:

Yo te recomiendo que si necesitas soporte multizona uses la libreria
tzinfo.

http://dev.rubyonrails.org/ticket/4551

HTH


#3

Gracias Juanjo, ahora sí que da la hora bien. Esperemos que no sea
demasiado lento (como he leído por ahí).

Por si a alguien le interesa basta instalar la gema tzinfo y el plugin
tzinfo_timezone:

gem install tzinfo
ruby script/plugin install tzinfo_timezone

y ahora para convertir:
time=Time.now # , g.created_at o lo que sea
TimeZone[‘Madrid’].utc_to_local(time.utc)

Más info en http://tzinfo.rubyforge.org/

Saludos,

Héctor.

Juanjo Bazán wrote:

On 5/25/07, H�ctor removed_email_address@domain.invalid wrote:

Hola a todos,

�Qu� se me ha pasado?

La clase TimeZone de Rails es bastante cutre y no tiene en cuenta el
horario de verano (el Daylight Saving Time), as� que durante 6 meses
m�todos como adjust dan mal la hora :frowning:

Yo te recomiendo que si necesitas soporte multizona uses la libreria
tzinfo.

http://dev.rubyonrails.org/ticket/4551

HTH