【发布时间】:2011-05-27 22:26:19
【问题描述】:
我有以下几点:
@comment.created_at.strftime("%I:%M %p %b %d")
输出:12 月 19 日上午 10:32
我想输出一个小写的 am,例如:12 月 19 日上午 10:32
关于如何使用 ruby/rails 做到这一点的任何想法?
谢谢
【问题讨论】:
标签: ruby-on-rails ruby-on-rails-3 strftime
我有以下几点:
@comment.created_at.strftime("%I:%M %p %b %d")
输出:12 月 19 日上午 10:32
我想输出一个小写的 am,例如:12 月 19 日上午 10:32
关于如何使用 ruby/rails 做到这一点的任何想法?
谢谢
【问题讨论】:
标签: ruby-on-rails ruby-on-rails-3 strftime
尝试使用 %P 而不是使用 %p
【讨论】:
使用 %P 代替 %p。这适用于 ruby 1.9,但对于 1.8,您需要使用 .sub(' AM ', ' am ').sub(' PM ', ' pm ') 或类似名称。
【讨论】:
<%= RUBY_VERSION %> 应该给你一个提示 ;-)
您可以将它们保存到不同的变量中并执行以下操作:
a = @comment.created_at.strftime("%I:%M")
b = @comment.created_at.strftime("%P").downcase
c = @comment.created_at.strftime("%b %d")
e = a+b+" "+c #=> 10:32am Dec 19
【讨论】:
似乎在 ruby 1.9 中您可以使用 %P 代替 %p 并且不要忘记删除空格
@comment.created_at.strftime("%I:%M%P %b %d") =>12 月 19 日上午 10:32
【讨论】: