我已经发送了基于两个表的 Rails AREL 查询结果的 json 响应。响应包括两个时间戳列:updated_at 和 updated_at_table_2。我重写 ActiveSupport::TimeWithZone.as_json 方法来获取 JSON 所需的日期时间格式。相同的方法显示在
http://stackoverflow.com/questions/2937740/rails-dates-with-json
我当前的 JSON 响应是: { "updated_at":"10/26/2012 22:04:07 -0400", "updated_at_table_2":"2012-10-27 02:04:07.463015" }
我希望他们是一样的。我依靠下面的 Rails 代码来生成 json。
render :json => { :customer_order => @customer_order }
其中@custoemr_order 来自:
CustomerOrder.select(%Q[
updated_at,
c.updated_at as updated_at_table_2
] ).
joins( %{ as co inner join customers as c on (co.customer_id = c.id)
问题:如何告诉 Rails 3 以与 updated_at_table_2 和 updated_at 列相同的方式处理 as_json?
任何建议/指针也很棒。
注意:我发现这篇文章询问了相同的根本问题(尽管不是关于 json),但没有很好的解决方案。:
http://stackoverflow.com/questions/12067173/rails-postgres-not-returning-timezone-info-on-column-from-joined-table