gpt4 book ai didi

ruby-on-rails - 在 ActiveSupport 时区中找不到 EST

转载 作者:行者123 更新时间:2023-12-04 05:49:48 25 4
gpt4 key购买 nike

我不确定如何开始......我不确定为什么 ActiveSupport::TimeZone 是必要的,因为 TZInfo::Timezone 似乎工作得很好,而且更完整......但我们一直在使用 ActiveSupport出于某种原因,我无法在可用时区中找到 EST 时区。我错过了什么吗?有没有不包括在内的任何原因?

有什么理由不使用 TZInfo?每个人都应该使用 TZInfo 吗?

最佳答案

TimeZone 类充当 TZInfo::Timezone 实例的包装器。它允许 Rails 执行以下操作:

  • 将 TZInfo 提供的区域集限制为 142 个区域的有意义的子集
  • 检索和显示具有更友好名称的区域(例如,“东部时间(美国和加拿大)”而不是“美国/纽约”)
  • 仅在需要时才延迟加载 TZInfo::Timezone 实例
  • 通过 TimeZone 的本地、解析、at 和 now 方法创建 ActiveSupport::TimeWithZone 实例。

  • 来源:Rails 3 Way - 第二版

    EST 在 ActiveSupport::TimeZone 中提供,它被命名为“东部时间(美国和加拿大)”。您可以通过调用 TimeZone.all(如果包含 ActiveSupport)来查看 ActiveSupport::TimeZone 提供的所有时区。 EST 也包含在美国时区中,您可以通过调用 TimeZone.us_zones 返回一个较小的美国时区集合。访问 TimeZone 集合将提供一个以它的偏移量开头的 TimeZone,例如。 TimeZone("东部时间(美国和加拿大)"] => (GMT-05:00) 东部时间(美国和加拿大)。

    关于ruby-on-rails - 在 ActiveSupport 时区中找不到 EST,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10219403/

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