日期时间的奇怪行为

时间:2014-09-29 13:50:24

标签: ruby-on-rails ruby-on-rails-3

我的数据库中有以下记录:

"availability_date" : ISODate("2014-09-29T15:45:00.000Z")

我试图获得两个日期时间之间的差异:

@minutes = (((@date_time.to_time) - (Time.now))/60).round

但@date_time具有以下值,我不明白为什么???

  

“2014-09-29 17:45:00 +0200”

有人可以帮助我。

提前致谢

2 个答案:

答案 0 :(得分:1)

我认为没有任何问题,@ date_time中的日期时间与数据库中的日期时间相同。最后的+0200意味着它是用不同的时区写的,我想这是GMT +2。它可能是您的计算机使用的时区。

您期望得到什么结果?你能给我举个例子吗 ?请务必阅读In Ruby on Rails, what's the difference between DateTime, Timestamp, Time and Date?

的答案 祝你好运。

答案 1 :(得分:0)

尝试使用to_i m将它们转换为整数,这样可以得到unix时间内的秒数,n可能更容易进行计算