在JSON响应中为所有日期时间字段自定义日期时间格式

时间:2016-08-23 04:39:02

标签: ruby-on-rails jbuilder

我使用jbuilder输出数据。

然而,JS中的日期将如下所示2016-09-01T02:39:08.495Z 如何使用此格式2016-09-01 02:39使Rails输出任何日期时间类型字段,丢弃JSON输出中的时区信息。

似乎没有优雅的方法可以将此选项设为默认值。

那就是我需要手动将转换放到我想要为所有jbuilder模板转换的任何字段中。

1 个答案:

答案 0 :(得分:0)

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

如果你计划在Rails应用中的许多地方使用它,你可以添加foll。到您的config/application.rb文件:

class Time
  def without_timezone
    self.strftime("%Y-%m-%d %H:%m")
  end
end

然后你可以在Rails应用程序的任何地方调用Time对象的without_timezone方法,包括jbuilder。

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