Ruby on rails 为JSON响应中的所有datetime字段自定义datetime格式

Ruby on rails 为JSON响应中的所有datetime字段自定义datetime格式,ruby-on-rails,jbuilder,Ruby On Rails,Jbuilder,我使用jbuilder输出数据 然而,JS中的日期看起来是这样的2016-09-01T02:39:08.495Z 我如何让Rails输出任何具有这种格式的datetime类型字段,丢弃JSON输出中的时区信息 似乎没有什么优雅的方法可以让这个选项成为默认选项 也就是说,我需要手动将转换放入我要为所有jbuilder模板转换的任何字段中。您始终可以使用格式:Time.zone.now.strftime(“%Y-%m-%d%H:%m”) 如果您计划在Rails应用程序的许多地方使用此功能,您可以添加

我使用jbuilder输出数据

然而,JS中的日期看起来是这样的
2016-09-01T02:39:08.495Z
我如何让Rails输出任何具有这种格式的datetime类型字段,丢弃JSON输出中的时区信息

似乎没有什么优雅的方法可以让这个选项成为默认选项


也就是说,我需要手动将转换放入我要为所有jbuilder模板转换的任何字段中。

您始终可以使用格式:Time.zone.now.strftime(“%Y-%m-%d%H:%m”)

如果您计划在Rails应用程序的许多地方使用此功能,您可以添加以下内容。到您的
config/application.rb
文件:

class Time
  def without_timezone
    self.strftime("%Y-%m-%d %H:%m")
  end
end
然后,您可以在Rails应用程序(包括jbuilder)中的任何位置调用时间对象上的
而不使用\u timezone
方法

Time.zone.now
> Tue, 23 Aug 2016 19:59:17 UTC +00:00
Time.zone.now.without_timezone
> "2016-08-23 20:08"

您始终可以使用格式:Time.zone.now.strftime(“%Y-%m-%d%H:%m”)

如果您计划在Rails应用程序的许多地方使用此功能,您可以添加以下内容。到您的
config/application.rb
文件:

class Time
  def without_timezone
    self.strftime("%Y-%m-%d %H:%m")
  end
end
然后,您可以在Rails应用程序(包括jbuilder)中的任何位置调用时间对象上的
而不使用\u timezone
方法

Time.zone.now
> Tue, 23 Aug 2016 19:59:17 UTC +00:00
Time.zone.now.without_timezone
> "2016-08-23 20:08"

听起来和这个问题差不多:听起来和这个问题差不多: