我想更改rails的magic列的默认时间戳(created,modified),而不是2010-09-03 14:52:46 UTC我想将其更改为2010年9月10日下午02:52。或者至少这样分析。
现在,我知道我可以在视图中通过操纵变量来正确地完成这项工作,但是难道没有一种更“铁路化的方法”可以让我在模型中完成这项工作,然后将其作为一种方法来调用吗?

最佳答案

class YourModel < ActiveRecord::Base
  def my_formated_date_time
    created_at.strftime("%B %d, %Y at %I:%M %p")
  end
end

或者可以使用本地化格式。将其添加到config/locale/your_locale.yml中。伊莫:这是最有铁路的路。
your_locale:
  time:
    formats:
      default: "%B %d, %Y at %I:%M %p"

在你看来
<%=l @your_model.created_at %>
<!-- short for: -->
<%= I18n.localize @your_model.created_at %>

10-04 21:59
查看更多