gpt4 book ai didi

ruby-on-rails - DateTime 类的意义何在?

转载 作者:数据小太阳 更新时间:2023-10-29 07:34:37 27 4
gpt4 key购买 nike

DateTime 类似乎是多余的,在阅读了该类的 Rails 扩展文档中的这一点之后,它似乎也有潜在的危险:

DateTimes aren’t aware of DST rules, so use a consistent non-DST offset when creating a DateTime with an offset in the local zone

DateTime#to_time 的 Rails 文档中还有这个:

Attempts to convert self to a Ruby Time object; returns self if out of range of Ruby Time class. If self has an offset other than 0, self will just be returned unaltered, since there’s no clean way to map it to a Time.

我假设最后一部分是由于 DateTime 没有识别 DST。

在我看来我们有这个:

  • Date 类表示没有时间的简单日期。
  • Time 类代表一个特定的时间点,隐含地包含日期。
  • DateTime 类与Time 类相同,但不理解 DST,有时无法转换为常规 Time 类。

那么 DateTime 是否应该从代码库中删除,或者它是否有我所缺少的有用目的?

最佳答案

DateTime 在 Rubies < 1.9.2 的 32 位机器上优于 Time - TimeY2K38 problem 的受害者并且限制在 32 位范围内。这个问题在 64 位机器和/或最近的 Ruby 版本中已经解决。如果例如 1.8 兼容性是必须的,或者您依赖于使用其 API 中的方法,而这些方法通常与 Time 的方法不同,您仍然可能需要使用 DateTime

关于ruby-on-rails - DateTime 类的意义何在?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10957717/

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