我的应用程序包含带有Gmail样式div的移动视图。每个div都有一个主题,名称和截止日期。
截止日期列是正常的日期时间值。
我要做的是让视图中的第一个条目显示为过去6天的天数,然后将其余条目显示为datetime。
例如:
周一 周二 星期三 星期三 周四 周五 2016年11月4日 2016年11月3日 .....
等
如何才能最好地实现这一目标?我认为我不需要为这个问题发布代码,但如果需要,我会发布。
谢谢!
修改
不工作......
在视图中......
<font size="1"><strong>Due:</strong> <%= homework.formatted_date(due) %></font>  
在ApplicationController中...(不确定我的语法是否正确...)
helper_method :formatted_date
def formatted_date(due)
if (Date.today - due).abs < 6
due.strftime('%A')
else
due.strftime('%Y/%m/%d')
end
end
视图加载但日期显示与之前相同...
答案 0 :(得分:2)
为您的视图制作帮助...将其放入ApplicationController
helper_method :formatted_date
def formatted_date(item_date)
if (Date.today - item_date).abs < 6
item_date.strftime('%A')
else
item_date.strftime('%Y/%m/%d')
end
end
然后在您看来,而不是显示object_date
字段显示formatted_date(object_date)