如何在Ruby中从DB date中获取日期时间

如何在Ruby中从DB date中获取日期时间,ruby,date,Ruby,Date,我需要从数据库日期中获取时间和日期,比如“2015-08-27T12:09:36Z”。我尝试过,但没有得到任何解决方案,因为我在不同的变量中得到了日期和时间。 我需要在Ruby中获取它在我的应用程序中没有rails 我使用了下面的代码,但没有得到 Time.strptime("2015-08-27T12:09:36Z", "%Y-%m-%dT%H:%M:%S%z").in_time_zone 有人有这方面的经验吗 谢谢我没有足够的声誉发表评论,所以我将评论作为回答,你在找这个吗 Time.no

我需要从数据库日期中获取时间和日期,比如
“2015-08-27T12:09:36Z”
。我尝试过,但没有得到任何解决方案,因为我在不同的变量中得到了日期和时间。

我需要在Ruby中获取它<代码>在我的应用程序中没有rails

我使用了下面的代码,但没有得到

Time.strptime("2015-08-27T12:09:36Z", "%Y-%m-%dT%H:%M:%S%z").in_time_zone
有人有这方面的经验吗


谢谢

我没有足够的声誉发表评论,所以我将评论作为回答,你在找这个吗

Time.now.strftime('%Y-%m-%dT%H:%M:%SZ')
这会给出你想要的图案。Z表示时区(如果使用)

%z - Time zone as hour and minute offset from UTC (e.g. +0900)
          %:z - hour and minute offset from UTC with a colon (e.g. +09:00)
          %::z - hour, minute and second offset from UTC (e.g. +09:00:00)
  %Z - Time zone abbreviation name
查看更多信息

我在你评论后的最新答案

require 'date'

DateTime.parse("2015-08-27T12:09:36Z").strftime('%Y-%m-%dT%H:%M:%SZ')

在将代码更改为日期时间时,首先需要
要求“日期”
。Ruby有内置的
Date
Time
类,没有
所需的
,但是库提供了更多的功能

如果从数据库中检索到ISO-8601格式的字符串,并且希望将其转换为日期和时间,只需使用
DateTime.iso8601(string)
获取
DateTime
对象。之后,您可以根据自己的喜好提取日期和时间组件

irb(main):001:0> require 'date' #=> true
irb(main):002:0> dt = DateTime.iso8601("2015-08-27T12:09:36Z") # DateTime object
irb(main):003:0> d = dt.to_date  # Date object
irb(main):004:0> t = dt.to_time  # Time object
看一看它和它的朋友
Time.parse()