Ruby on rails RubyonRails——与时代一起工作

Ruby on rails RubyonRails——与时代一起工作,ruby-on-rails,datetime,Ruby On Rails,Datetime,如果在数据库(MySQL)中,我有一个datetime列(例如1899-12-30 19:00:00),我如何计算1天的总和 跟随 如果我想增加1天,它实际上会增加60*60*24天(86400天) 但如果我这样做,实际上会增加1天: t = Time.now =>Mon Jun 14 10:32:51 -0600 2010 t + (60 * 60 * 24) =>Tue Jun 15 10:33:21 -0600 2010 我想这与格式有关……我该怎么做?你实际上增加了8640

如果在数据库(MySQL)中,我有一个datetime列(例如1899-12-30 19:00:00),我如何计算1天的总和

跟随

如果我想增加1天,它实际上会增加60*60*24天(86400天)

但如果我这样做,实际上会增加1天:

t = Time.now
=>Mon Jun 14 10:32:51 -0600 2010
t + (60 * 60 * 24)
=>Tue Jun 15 10:33:21 -0600 2010

我想这与格式有关……我该怎么做?

你实际上增加了86400秒(60秒*60分钟*24小时)

ActiveSupport有一些处理时间的内置助手方法:

Time.now + 1.day + 15.hours
在轨道上

它的使用非常简单

r = Record.find(:first) r.created_at + 1.day # this will give you a day to one day ahead ) r.created_at + 2.days + 15.hours + 30.minutes + 5.seconds r=记录。查找(:第一个) r、 创建时间为+1.day#这将为您提前一天提供时间) r、 创建时间为+2天+15小时+30分钟+5秒 或者现在就利用时间

另外,如果你想看一下by_star plugin/gem,它可以使一些查询等变得非常简单

r = Record.find(:first) r.created_at + 1.day # this will give you a day to one day ahead ) r.created_at + 2.days + 15.hours + 30.minutes + 5.seconds