Ho un record foonel database che ha :start_timee :timezoneattributi.
L' :start_timeora è in UTC - 2001-01-01 14:20:00, per esempio. Il :timezoneè una stringa - America/New_York, per esempio.
Voglio creare un nuovo oggetto Time con il valore di :start_timema il cui fuso orario è specificato da :timezone. Non voglio caricare :start_timee poi convertire in :timezone, perché Rails sarà intelligente e aggiornerà l'ora da UTC per essere coerente con quel fuso orario.
Attualmente,
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
Invece, voglio vedere
=> Sat, 01 Jan 2000 14:20:00 EST -05:00
vale a dire. Voglio fare:
t
=> 2000-01-01 14:20:00 UTC
t.zone = "America/New_York"
=> "America/New_York"
t
=> 2000-01-01 14:20:00 EST