Ruby on rails 3 如何计算轨道中的时差
我有一个字段是时间戳。我想计算时间戳和当前时间之间的时间差,并以人类可读的方式显示时间,如Ruby on rails 3 如何计算轨道中的时差,ruby-on-rails-3,timestamp,Ruby On Rails 3,Timestamp,我有一个字段是时间戳。我想计算时间戳和当前时间之间的时间差,并以人类可读的方式显示时间,如 2天剩余时间#在剩余>1天时不显示小时数 只要剩下不到一天,我就会有一个javascript倒计时计时器 我构建了dotiw库来实现这一点: 这是基于Rails中的distance\u of\u time\u in\u words方法,该方法不够精确,因此我使用dotiw使其更加精确。请尝试以下方法: if end_date < Time.now # ended already return '
2天剩余时间#在剩余>1天时不显示小时数
只要剩下不到一天,我就会有一个javascript倒计时计时器 我构建了
dotiw
库来实现这一点:
这是基于Rails中的distance\u of\u time\u in\u words
方法,该方法不够精确,因此我使用dotiw
使其更加精确。请尝试以下方法:
if end_date < Time.now # ended already
return 'Ended'
elsif end_date > (Time.now + 1.day) # more than 1 day away
diff_in_days = ((end_date - Time.now).to_i / 1.day)
days_string = diff_in_days.to_s
days_string += (diff_in_days > 1) ? ' Days' : ' Day'
return days_string
else # ending today
diff_in_HMS = Time.at(end_date - Time.now).gmtime.strftime('%R:%S')
return diff_in_HMS
end
如果结束日期(Time.now+1.day)#超过1天
diff_in_days=((end_date-Time.now).to_i/1.day)
days\u string=diff\u in\u days.to\u s
天数字符串+=(天数中的差异>1)?'天:'天'
返回天数\u字符串
否则,今天就结束
diff_in_HMS=Time.at(end_date-Time.now).gmtime.strftime(“%R:%S”)
HMS中的返回差异
终止
如果结束日期大于1天,则打印“X天”;如果今天结束,则打印“HH:MM:SS”;如果结束日期在过去,则打印“结束”。刚刚将您的宝石添加到我的宝石文件中。谢谢但是,当剩余时间超过一天时,不显示任何时间的逻辑将如何实现?