在ruby on rails上,我怎样才能将ActiveSupport :: TimeWithZone中的时间转换为Month,Date,Year。 例如,我有以下时间:
Fri, 08 May 2015 22:54:31 UTC +00:00
我需要的是:
05/08/2014
答案 0 :(得分:3)
像这样使用 strftime :
> t = Time.now
#=> 2015-05-11 12:47:32 +0530
> t.strftime('%m/%d/%Y')
#=> "05/11/2015"
答案 1 :(得分:3)
irb(main):010:0> DateTime.parse("Fri, 08 May 2015 22:54:31 UTC +00:00").strftime("%d/%m/%Y")
=> "08/05/2015"
答案 2 :(得分:0)
使用此to_s
方法的to_formatted_s
方法别名。
your_var.to_s('%m/%d/%Y')
答案 3 :(得分:0)
t = Time.now #=> 2007-11-19 08:37:48 -0600
t.strftime("Printed on %m/%d/%Y") #=> "Printed on 11/19/2007"
t.strftime("at %I:%M%p") #=> "at 08:37AM"
答案 4 :(得分:0)
考虑到上述所有问题并且正在完成工作.I18n有一个专门的API。
这里描述了rails方式http://guides.rubyonrails.org/i18n.html
3.3添加日期/时间格式
<p><%= l Time.now, format: :short %></p>
# en.yml
en:
time:
formats:
short: "%m/%d/%Y"
这有助于保持事物清洁,不受你的意见影响。
希望有所帮助