微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何使Rail 3模型to_json,仅返回日期而不是时间?

如何解决如何使Rail 3模型to_json,仅返回日期而不是时间?

| 我有一个带有Date字段的rails 3模型。当我将模型呈现为json时,date字段将返回日期和时间。它应该只返回日期,因为这是一个Date字段,而不是DateTime字段。 呈现为json时,如何使模型仅返回Date字段的日期? 我已经尝试覆盖TimeWithZone和Date的as_json方法,如在这两个问题中所讨论的那样,但这对我不起作用。 首先,我们使用的是ruby 1.9.2,rails 3.0.7,mongodb和mongoid 2.0.2。我知道我们的mongo / mongoid版本不支持\“ Date \”字段类型。它存储为UTC时间。我正在尝试让数据看起来像只是一个日期,并通过json传递到客户端。     

解决方法

        只需在您的课程中覆盖日期获取器即可(假设您的日期字段称为
date
):
class YourClass < ActiveRecord::Base
  def date
    self[:date] && self[:date].to_date
  end
end
这样,无论何时调用“ 2”,它都会在返回之前将TimeWithZone对象转换为Date对象。     

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。