Ruby on Rails Time.now

时间:2010-09-10 07:48:24

标签: ruby-on-rails

我在使用Time.now时遇到了麻烦。出于某种原因,当我将对象保存到数据库时,它将它保存到2000年。我正在尝试将我保存在DB中的对象与Time.now进行比较以检查它是否更大,但它总是返回因为2000年是假的。有谁知道我可以解决这个问题的方法吗?

我需要检查以确保自创建时间对象以来已经过了10分钟而不是Time.now

2 个答案:

答案 0 :(得分:2)

听起来您的数据库列的类型为time,而不是datetimetimestamp。这只会存储时间,当它转换为ruby中的Time实例(支持日,月,年等)时,默认值用于日,月,年,这就是为什么你这样做的原因看到2000年。

如果这是问题,您可能需要将数据库列更新为datetimetimestamp,因为听起来您还需要时间的一天,一个月,一年的部分时间。在这种情况下,您的比较将起作用。

答案 1 :(得分:0)

created_at < 10.minutes.ago应该有效