在控制器中:
@delivery_time=(Time.now + @hotel.deliverytime.to_i).strftime("%I:%M")
其中deliverytime=00:30:00
我得到@delivery_time
的错误答案。我在添加2014-12-12 05:50:00
和Time.now=2014-12-12 17:20:00
后收到deliverytime=00:30:00
。答案应为2014-12-12 17:50:00
。我做错了什么?
答案 0 :(得分:0)
尝试这样: -
duration = @hotel.deliverytime.hour * 60 * 60 + @hotel.deliverytime.min * 60 + @hotel.deliverytime.sec
@delivery_time=(Time.now + duration).strftime("%I:%M")
答案 1 :(得分:0)
Rails允许您添加特定数量的天,小时,分钟等
Time.now+30.minutes
您也可以
Time.now+1.hour
Time.now+1.day
如果您的时间是00:00:00字符串,则可以执行类似
的操作@delivery_time=(Time.now + (@hotel.deliverytime.split(':')[0].to_i*3600 + @hotel.deliverytime.split(':')[1].to_i*60 + @hotel.deliverytime.split(':')[2].to_i).seconds ).strftime("%I:%M")