首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Ruby / Rails -更改时间的时区,但不更改值

Ruby / Rails -更改时间的时区,但不更改值
EN

Stack Overflow用户
提问于 2013-05-29 23:34:49
回答 10查看 79.1K关注 0票数 120

我在数据库中有一个具有:start_time:timezone属性的记录foo

例如,:start_time是UTC - 2001-01-01 14:20:00中的时间。例如,:timezone是一个字符串- America/New_York

我想创建一个新的Time对象,其值为:start_time,但其时区由:timezone指定。我不想加载:start_time,然后将其转换为:timezone,因为Rails会很聪明,它会更新UTC的时间,使其与那个时区保持一致。

目前,

代码语言:javascript
复制
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

相反,我想看到

代码语言:javascript
复制
=> Sat, 01 Jan 2000 14:20:00 EST -05:00

即。我想做的是:

代码语言:javascript
复制
t
=> 2000-01-01 14:20:00 UTC
t.zone = "America/New_York"
=> "America/New_York"
t
=> 2000-01-01 14:20:00 EST
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16818180

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档