gpt4 book ai didi

ruby-on-rails - Rails 时区和夏令时

转载 作者:行者123 更新时间:2023-12-03 20:31:14 26 4
gpt4 key购买 nike

有一段时间我试图了解这个时区时间是如何工作的,我有一个问题:

今天在我的国家,我们处于夏令时 (GMT-2)。
所以我的应用程序的用户输入一个时间,比如上午 11:00 并发布表单。
据我所知,rails 会将此日期转换为 UTC 并保存在数据库中(在我的情况下为 mysql),例如:UTC 时间下午 1:00。

当我恢复该记录时,我必须转换为本地时间才能显示。好的?

我的问题是,假设这个日期/时间代表 future 的日期/时间,当我的国家从夏令时 (GMT-3) 出来时。 Rails 会保存 01:00PM UTC?今天,在夏令时,本地时间将如何?而在 future ,这个本地时间会是怎样的呢?

基本上,我总是需要在上午 11:00 向用户显示。

谢谢。

最佳答案

时区可以在几个地方发挥作用:操作系统(或可能是用户帐户)默认设置、数据库服务器、Rails environment.rb .

关键是要确保所有日期都使用 UTC 时区存储,然后以您本地的时区显示。听起来你正在这样做。

所以你的问题似乎可以归结为“如果是夏令时,我想抵消-3小时,否则抵消-2小时”。 Rails 时间扩展允许您确定当前偏移量,例如 Time.zone.now.utc_offset , 和 Time#dst?告诉您这两个是否是夏令时,您可以有条件地减去额外的小时(3600 百秒)。

关于ruby-on-rails - Rails 时区和夏令时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13378327/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com