J'ai un dossier foo
dans la base de données qui a :start_time
y :timezone
attributs.
Le site :start_time
est une heure en UTC - 2001-01-01 14:20:00
par exemple. Le site :timezone
est une chaîne de caractères - America/New_York
par exemple.
Je veux créer un nouvel objet Time avec la valeur de :start_time
mais dont le fuseau horaire est spécifié par :timezone
. Je ne veux pas charger le :start_time
et ensuite convertir en :timezone
car Rails sera intelligent et mettra à jour l'heure à partir de l'UTC pour qu'elle soit cohérente avec ce fuseau horaire.
Actuellement,
t = foo.start_time
=> 2000-01-01 14:20:00 UTC
t.zone
=> "UTC"
t.in_time_zone("America/New_York")
=> Sat, 01 Jan 2000 09:20:00 EST -05:00
A la place, je veux voir
=> Sat, 01 Jan 2000 14:20:00 EST -05:00
ie. Je veux le faire :
t
=> 2000-01-01 14:20:00 UTC
t.zone = "America/New_York"
=> "America/New_York"
t
=> 2000-01-01 14:20:00 EST