我试图在服务JSON的Rails 4 API中准确地比较日期时间。将rfc3339格式的日期发送到此类
的API时"2015-05-06T21:16:43.611-0400"
比较无法正常工作,因为Rails 4将日期时间与微秒精度进行比较,而日期则以毫秒精度发送
有没有办法限制"做类似
之类的比较毫秒object.created_at > '2015-05-06T21:16:43.611-0400'
答案 0 :(得分:3)
你可以通过object.created_at.change(sec: object.created_at.sec)
删除毫秒。这将返回一个新的日期时间对象,其中所有内容都在零秒之外,它不会更改数据库中的日期时间。
我希望有一个更好的方法可以做到,但DateTime#change
in Rails 4 does not support usec
,尽管互联网上到处都是人们说要使用它。
你可以写一个帮手来使这个更整洁,
def strip_milliseconds(datetime)
datetime.change sec: datetime.created_at.sec
end