【发布时间】:2011-11-17 11:44:10
【问题描述】:
我在 Rails 3.0 上。对于模型的 updated_at 列,我需要以 JSON 格式将其作为用户友好格式输出,因此我不想将 2011-09-14T22:01:32Z 视为值,而是想显示 less than a minute ago(或我决定的任何用户友好消息) 为updated_at。我编写了一个以用户友好格式返回输出的方法,现在需要在视图、控制器和模型中提供该功能。这样做的最佳方法是什么,这样才不会令人费解或不好的做法。
编辑根据@klochner 的回答,这是我的date.rb 的样子,但现在它抛出date.rb:21:informat':参数数量错误(2 代表0)(ArgumentError)`
include ActionView::Helpers::DateHelper
class ActiveSupport::TimeWithZone
def friendly
format
end
end
class Date
def friendly
format
end
end
class Time
def friendly
format
end
end
def format
if self.today?
format_time = ...
elsif (self < Time.now.beginning_of_day) and (self > Time.now.yesterday.beginning_of_day)
format_time = ...
else
format_time = ...
end
end
@klochner 建议将 format 更改为 format_helper 效果很好。谢谢!
【问题讨论】:
标签: ruby-on-rails ruby-on-rails-3 json