我在数据库中有一个记录foo
,它有:start_time
和:timezone
个属性.
例如,:start_time
是UTC-2001-01-01 14:20:00
的时间.
我想创建一个新的时间对象,其值为:start_time
,但其时区由:timezone
指定.我不想先加载:start_time
,然后再转换成:timezone
,因为Rails会很聪明,会从UTC更新时间,使其与时区一致.
目前,
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
相反,我想看看
=> Sat, 01 Jan 2000 14:20:00 EST -05:00
我想做:
t
=> 2000-01-01 14:20:00 UTC
t.zone = "America/New_York"
=> "America/New_York"
t
=> 2000-01-01 14:20:00 EST