0

我正在尝试以 YYYY-MMM-DD 方式格式化我的日期。我有一个指定的 en.yml 文件。

formats:
  default: ! '%Y-%b-%d'

我还在我的初始化程序文件夹中创建了一个 date_time_formats.rb。

Date::DATE_FORMATS[:default] = '%Y-%b-%d'
Time::DATE_FORMATS[:db]= '%Y-%b-%d'

我也尝试将相同的代码直接放在我的environments.rb文件中。如果我在控制台中测试默认值,Date.now.to_s那么我会得到我期望的回报,“2012-Nov-10”,但在我看来,我总是看到“2012-11-10”。

我尝试使用 and 将其保存在控制器中Date.nowDate.now.to_s但我仍然得到相同的结果。

我必须缺少一些简单的东西,所以任何帮助将不胜感激。

4

2 回答 2

0

我找到了我的问题的答案,虽然我不明白为什么。这是一个堆栈答案,在这里解释它

基本上我将这两行代码添加到了我的 environment.rb 中。

Time::DATE_FORMATS.merge!({:db => '%m/%d/%Y', :uk_format => '%m/%d/%Y'})
Date::DATE_FORMATS.merge!({:db => '%m/%d/%Y', :uk_format => '%m/%d/%Y'})

现在一切都按计划进行。我查找了有关合并功能的文档以获得更好的理解,但没有任何运气。

于 2012-11-10T14:07:46.327 回答
0

您还可以尝试在视图中本地化您的日期:

<%= l(Model.created_at) %>
于 2012-11-10T19:31:41.000 回答