我猜我需要创建一个辅助方法才能实现这一目标,但实际上我想使用distance_of_time_in_words_to_now
来显示datetime
字段'之间的时间。 s数据,现在,但更具体的话。例如,如果是3天就应该在3天内说出#34;"。如果是明天,它应该说"明天" (没有"在")。
我现在拥有的只是:
<%= distance_of_time_in_words_to_now(interaction.action_date) %>
这里的方向是否正确?谢谢!
答案 0 :(得分:0)
如果您查看此方法的来源(http://api.rubyonrails.org/classes/ActionView/Helpers/DateHelper.html#method-i-distance_of_time_in_words),您会看到它使用本地化。几天的关键是:x_days,所以在你的en.yml文件中,你可以使用:count覆盖它,如下所示:
en:
x_days: "in %{count} days"
现在为“明天”,我会创建一个帮助程序,它可以返回您的自定义响应或回退到distance_of_time_in_words,如下所示:
def custom_distance_of_time_in_words_to_now(time)
return "tomorrow" if time.tomorrow? #however you decide to check
distance_of_time_in_words_to_now(time)
end
答案 1 :(得分:0)
您可能需要添加“天”字样,但您可以从以下内容中获取
Time.now.strftime("%d") #for today's date that will give you 16
在&gt;&gt;中检查以下内容irb它给你想要的东西
Time.now.strftime("%d")+ " days" # output => "16 days"