Ruby on rails 在模型上使用as_JSON从Rails返回JSON响应中日期的非标准格式
我正在尝试将从数据库返回的日期(日期格式)重新格式化为格式化字符串(格式:%m%d%y),以便由单独的客户端应用程序输出 在客户端格式化它不是一个选项,因为只有web应用程序在我们的控制之下Ruby on rails 在模型上使用as_JSON从Rails返回JSON响应中日期的非标准格式,ruby-on-rails,ruby-on-rails-3,json,rails-activerecord,Ruby On Rails,Ruby On Rails 3,Json,Rails Activerecord,我正在尝试将从数据库返回的日期(日期格式)重新格式化为格式化字符串(格式:%m%d%y),以便由单独的客户端应用程序输出 在客户端格式化它不是一个选项,因为只有web应用程序在我们的控制之下 def as_json(options={}) super( :except => [:id, :created_at, :updated_at], :include => { :children => { :except => [:c
def as_json(options={})
super(
:except => [:id, :created_at, :updated_at],
:include => {
:children => {
:except => [:created_at, :updated_at]
}
}
).merge(:tasks_total => self.tasks_total)
end
我尝试使用after_initialize回调,但是这只会导致将nill值传递给客户端
非常感谢您的帮助。为了解决rails在as_json中对属性强制执行数据类型的问题,我使用了如下内容,并使用了一个哈希:
def as_json(options={})
{
name: name,
date_of_birth: self.date_format(date_of_birth),
more_info: more_info,
children: children.map(&:as_json)
}
end
调用date\u format
是因为此模型实际上有多个日期需要以相同的方式格式化
感谢@rbates的帮助