【发布时间】:2011-07-19 00:05:00
【问题描述】:
根据http://guides.rubyonrails.org/i18n.html#adding-date-time-formats 的文档,询问特定日期格式的最佳方法是在/config/locales/en.yml 中定义它们。我已将此文件:https://github.com/rails/rails/blob/master/activesupport/lib/active_support/locale/en.yml 复制并粘贴到我的语言环境目录中。
我做了一些更改(星号仅用于强调):
"en-US":
date:
formats:
default: "%Y-%m-%d"
**short: "short %b %d"**
和
time:
formats:
default: "%a, %d %b %Y %H:%M:%S %z "
**short: "short %B %d, %Y"**
在我的部分:
<%= l item.create_date, :format => :short %>
create_date 是我的项目数据库中的日期时间行。
我已经重新启动了我的服务器,但仍然收到如下格式的日期: 3月15日00:00
我有一种感觉,这是因为我既没有使用日期也没有使用时间。我找不到日期时间的“短”或“长”的定义。我尝试通过添加以下代码将其添加到此文件中:
datetime:
formats:
short: "short %B %d, %Y"
运气不好。我错过了什么。我觉得我直接按照说明进行操作。谢谢!
【问题讨论】:
-
在
rails console上运行item.create_date.class的结果是什么(或者只是将其转储到屏幕上?) -
我得到:ActiveSupport::TimeWithZone
标签: ruby-on-rails-3 datetime internationalization