gpt4 book ai didi

ruby-on-rails - 如何在 Ruby on Rails 中查找时区中两个日期之间的剩余时间?

转载 作者:数据小太阳 更新时间:2023-10-29 08:02:58 25 4
gpt4 key购买 nike

我正在尝试使用 Ruby on Rails 中的 flipclock 对某些事件进行倒计时。

我试图找到 EST 事件的时差。

time_diff = <%= (Time.utc(2016, 7, 2, 18, 14, 0).in_time_zone("Eastern Time (US & Canada)") - Time.now.in_time_zone("Eastern Time (US & Canada)")).to_i.abs %>;

我试图通过相差一小时来检查它是否正确,但我总是得到错误的剩余小时数。

最佳答案

我认为这就是您所追求的:

(ActiveSupport::TimeZone.new("EST").local(2016, 7, 2, 18, 14, 0) - Time.now).to_i.abs

你问题中的代码等同于

(Time.utc(2016, 7, 2, 18, 14, 0) - Time.now).to_i.abs

您可能希望表达式的第一部分表示“18:14 EST”,但它的意思是“18:14 UTC……但要显示 EST 的时间”。

如果你注意到它可能会澄清事情

Time.utc(2016, 7, 2, 18, 14, 0).in_time_zone("EST") == Time.utc(2016, 7, 2, 18, 14, 0)

因为

Time.utc(2016, 7, 2, 18, 14, 0).in_time_zone("EST").to_i == Time.utc(2016, 7, 2, 18, 14, 0).to_i

但是

Time.utc(2016, 7, 2, 18, 14, 0).in_time_zone("EST").to_s != Time.utc(2016, 7, 2, 18, 14, 0).to_s

关于ruby-on-rails - 如何在 Ruby on Rails 中查找时区中两个日期之间的剩余时间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38164760/

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