我必须比较rails中的日期以获取该日期之后的值我已将日期发送为"2013-03-04T06:26:25Z"
但实际上db中的记录包含日期2013-03-04 06:26:25.817149
所以当我检查时它也返回该记录的日期,但我希望在该日期之后记录。我怎样才能从数据库中删除毫秒?请帮帮我。
答案 0 :(得分:32)
我有类似的问题
在将时间对象发送到数据库之前更新这样的时间对象:
time.change(:usec => 0)
答案 1 :(得分:12)
从ruby 1.9开始,您可以使用round
t = Time.now.round
t.usec # => 0
答案 2 :(得分:1)
我也遇到了这个问题,但是当我应用更改as indicated in @Intrepidd's answer时,它并没有影响我的时间对象的微秒。
请注意(至少目前):usec
密钥仅适用于Time#change
方法,而不适用适用于DateTime#change
方法。
DateTime#change
方法会忽略它不接受的键,因此除非您检查过,否则您无法判断您尝试更改的微秒是否有效进一步对象(例如使用DateTime#rfc3339(9)
)。
因此,在尝试此更改之前,请确保您使用的是Time
对象,而不是DateTime
对象。