我有时间段:
我想将它们添加到我的数据库中的现有记录中,以便我可以轻松地将它们用于计算?我需要的计算类型是[time_period] - (Time.now - [datetime]),以便查看剩余的时间段。
由于我的期间非常标准,我想将时间段保存为字符串“2年”,“1个月”,“4天”等,并在使用时拆分。例如,“4天”可能会变成这样:
4.send("days".to_sym)
您如何看待这种方法?有更好的想法吗?
答案 0 :(得分:1)
好的,我有更好的解决方案。
Here is the Class TimeDuration
five_minutes = TimeDuration.new("5 min")
five_minutes + Time.now
Time.now
# => 2013-09-13 02:50:06 +0200
five_minutes + Time.now
# => 2013-09-13 02:55:13 +0200
答案 1 :(得分:-1)
最好以标准格式存储所有内容;像秒一样,这样你就可以轻松地进行计算而无需先进行转换。如果您还存储了某种单位字段(即年,日,分,秒),则可以轻松地将秒数转换回适当的单位进行显示 - 有点像上面所示。
stored_value_in_minutes = stored_value.seconds / 1.minutes