我有这个格式的日期2014-04-05来自@ post.date
我希望在我的视图中将其转换为“星期六4月5日”的格式
如果日期是今天,我希望它使用这种格式“今天4月6日”
目前我有
<% if @post.date === Date.today.strftime("%Y-%m-%d") %>
<p> Today Month(short form) Day(number) </p>
<% else %>
<p> Day(word) Month(short form) Day(number) </p>
<% end %>
如何格式化日期?
提前谢谢。
答案 0 :(得分:4)
使用此:
<% if @post.date === Date.today %>
<%= @post.date.strftime("Today %b %d") %>
<% else %>
<%= @post.date.strftime("%A %b %d") %>
<% end %>
请参阅strftime
可用的 complete list of format directives 。
答案 1 :(得分:0)
更清洁的解决方案是将此作为辅助方法实现在&#34; app / helpers / application_helper.rb&#34;
定义方法:
def date_string_for(datetime)
datetime.strftime("%b %e, %Y")
end
然后,您可以从任何视图致电:
<%= date_string_for @post.date %>
这提供了DRY解决方案。