Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何将Rail3模型转换为_json,只返回日期而不返回时间?_Json_Ruby On Rails 3_Date_Model_Mongoid - Fatal编程技术网

如何将Rail3模型转换为_json,只返回日期而不返回时间?

如何将Rail3模型转换为_json,只返回日期而不返回时间?,json,ruby-on-rails-3,date,model,mongoid,Json,Ruby On Rails 3,Date,Model,Mongoid,我有一个带有日期字段的rails 3模型。当我将模型呈现为json时,date字段将返回日期和时间。它应该只返回日期,因为这是一个日期字段而不是日期时间字段 在呈现为json时,如何使模型仅返回日期字段的日期 我尝试过重写TimeWithZone和Date的as_json方法,如第2节所述,但这对我不起作用 fwiw,我们正在使用ruby 1.9.2、rails 3.0.7、mongodb和mongoid 2.0.2。我知道我们的mongo/mongoid版本不支持“日期”字段类型。它被存储为U

我有一个带有日期字段的rails 3模型。当我将模型呈现为json时,date字段将返回日期和时间。它应该只返回日期,因为这是一个日期字段而不是日期时间字段

在呈现为json时,如何使模型仅返回日期字段的日期

我尝试过重写TimeWithZone和Date的as_json方法,如第2节所述,但这对我不起作用


fwiw,我们正在使用ruby 1.9.2、rails 3.0.7、mongodb和mongoid 2.0.2。我知道我们的mongo/mongoid版本不支持“日期”字段类型。它被存储为UTC时间。我试图让数据看起来像是一个日期,通过json发送到客户端。

只需覆盖类中的日期获取程序(假设您的日期字段名为
date
):

classyourclass
这样,无论何时调用
某个\u record.date
它都会在返回之前将TimeWithZone对象转换为日期对象

class YourClass < ActiveRecord::Base
  def date
    self[:date] && self[:date].to_date
  end
end