我试图显示根据周数计算的周数 “x周前” 这应该只是增加一周前,两周前,三周前,1个月前,2个月前,1年前..等等
我正在使用方法助手:
def weeks_ago_in_words(from_time, include_seconds = false)
to_time = Time.now
weeks_ago = ((to_time - from_time)/1.week).abs
[nil, "last week", "two weeks ago", "three weeks ago"][weeks_ago] ||
distance_of_time_in_words(from_time, to_time, include_seconds)
end
在视图中:
= weeks_ago_in_words(Time.local(2013) + week.to_i)
week = a week number like 1,10,28,52 etc
这不能给我正确的结果,是否有更好的方法来计算基于周围的“x周前”?
答案 0 :(得分:0)
如果您要比较同一年的两个日期,请使用cweek代码:
require 'date'
Time.now.to_date.cweek - Date.new(2013,1,1).cweek
如果你要比较两个不同的年份,你必须添加一些条件逻辑来确定你的年份乘数,因为cweek在2012年12月31日和2013年1月1日返回相同的值。