dan*_*mcc 26 timestamp ruby-on-rails date ruby-on-rails-3.1
我在运行Rails 3.1的基本应用程序中调用创建记录的日期.
<%= @issue.created_at %>
Run Code Online (Sandbox Code Playgroud)
以上输出以下时间戳:
2011-09-10 14:44:24 UTC
Run Code Online (Sandbox Code Playgroud)
改变这种显示方式的最简单方法是什么?我想要这样的东西:
10 Sept. 2011
Run Code Online (Sandbox Code Playgroud)
然后以某种不同的格式再次调用它:
14:44
Run Code Online (Sandbox Code Playgroud)
所以我可以调用它两次并将两者合并在一起:
10 Sept. 2011
14:44
Run Code Online (Sandbox Code Playgroud)
我之所以要调用它两次而不是创建一个帮助器来格式化两行日期/时间的原因是允许我在某些地方调用日期而在其他地方调用日期.
spi*_*ike 76
最简单的方法是使用strftime函数
# Day / Month / Year
@issue.created_at.strftime("%d %b. %Y")
# Hour:Min
@issue.created_at.strftime("%H:%M")
Run Code Online (Sandbox Code Playgroud)
如果你发现自己做了很多事,你可以将这两个电话放在单独的帮助器中.
luc*_*tte 13
我会用I18n.看一些示例http://guides.rubyonrails.org/i18n.html#adding-date-time-formats.这是一种清晰灵活的格式化日期和时间的方法.
<%= l(@issue.created_at, :format=>:your_format) %>
Run Code Online (Sandbox Code Playgroud)
在语言环境YAML(app/config/locale/country_id.yml)中,您必须声明
time:
formats:
your_format: '%d %b. %Y'
your_another_format: '%I:%M'
Run Code Online (Sandbox Code Playgroud)
日期格式应在i18n YAML定义文件中声明,以便于配置,其他日期格式可在此处找到
| 归档时间: |
|
| 查看次数: |
33703 次 |
| 最近记录: |