在 Rails 3.0.10 中,我Time.zone
用于更改用户查看美国各地发布的课程时间的方式。然而,改变时区似乎并不像我期望的那样
Time.zone = TZInfo::Timezone.get('America/Los_Angeles')
Time.zone # => (GMT-08:00) America/Los_Angeles
Time.current # => 2011-10-30 14:00:00 -0700
Time.zone = TZInfo::Timezone.get('America/Chicago')
Time.zone # => (GMT-06:00) America/Chicago
Time.current # => 2011-10-30 14:00:00 -0700
我希望时间会发生变化以及偏移量以适应 Time.zone 的变化,但它的行为似乎并非如此。
我遇到了一个问题,比如加利福尼亚州洛杉矶的用户正在创建在加利福尼亚时间晚上 9 点结束的课程,并且不同时区的用户看到课程处于非活动状态并在不同时间而不是同时消失。任何人都可以了解 Time.zone 的实际设置以及如何让课程在晚上 9 点(太平洋标准时间)结束,并在晚上 11 点(中部标准时间)正确消失吗?