Me encontraba con un problema en mi aplicación L-exp a la hora de guardar las feeds de diferentes partes del mundo. Es decir, cada una llevaba su zona horaria propia y por tanto cuando quería mostrarlas sobre una misma base ( la del servidor local) no lo podía hacer ya que estaban en diferentes zonas.
Googleando encontré una librería y un Plugin llamados tzinfo. Tras pelearme un poquito he conseguido de forma fácil hacer una conversión de las fechas antes de guardarlas a la zona horaria del servidor.
Por lo que he leído Rails no resuelve bien este tema en su estándar de momento y por tanto hay que usar esta biblioteca
require 'tzinfo'
tz = TZInfo::Timezone.get('America/Chicago')
fechaconv=tz.utc_to_local(fecha.utc)
Hay que asegurarse que se tienen los dos instalados. Luego en la segunda línea yo tuve que averiguar en que zona se encuentra mi hosting para calcular la base. Supongo que debe haber una forma más correcta de hacerlo, pero yo lo hice por estimación.
Plugin | tzinfo plugin
Biblioteca | tzinfo.rubyforge.org
Popularity: 1% [?]


2 Comments
at 12:59 :40 - 26th noviembre 2007 Permalink
Un comentario que no se si es muy tonto. No merece la pena utilizar UTC y así simplificas las conversiones?
at 17:12 :20 - 26th noviembre 2007 Permalink
Buen comentario y también lo había planteado. Además podría haber añadido la opción de que guardase todas las fechas en utc desde el environment.rb. Pero empecé guardando todas las fechas localmente y ahora tome este camino. Quizás más complicado, pero también posible.
Gracias por tu opinión
Post a Comment