Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/24.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/amazon-s3/2.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
Ruby on rails 日期差异(以天为单位)_Ruby On Rails_Ruby - Fatal编程技术网

Ruby on rails 日期差异(以天为单位)

Ruby on rails 日期差异(以天为单位),ruby-on-rails,ruby,Ruby On Rails,Ruby,我减去两个日期,我想把差值转换成天。我怎样才能做到? 我像下面这样做,它会返回下面的结果,我如何将结果转换为天 article.created_at #=> Fri, 05 Aug 2016 16:53:01 HKT +08:00 message.created_at #=> Fri, 28 Aug 2015 07:59:43 HKT +08:00 article.created_at - message.created_at #=> 29667198.69661808

我减去两个日期,我想把差值转换成天。我怎样才能做到? 我像下面这样做,它会返回下面的结果,我如何将结果转换为天

article.created_at
#=> Fri, 05 Aug 2016 16:53:01 HKT +08:00

message.created_at
#=> Fri, 28 Aug 2015 07:59:43 HKT +08:00

article.created_at - message.created_at
#=> 29667198.69661808

你应该可以除以一天

(article.created_at - message.created_at) / 1.day
#=> 343.3703472222222

您可以将
Time
(或
TimeWithZone
)对象转换为
Date
实例,并调用该实例,以天为单位返回差值:

t1 = Time.parse('05 Aug 2016 16:53:01')
t2 = Time.parse('28 Aug 2015 07:59:43')

t1.to_date - t2.to_date
#=> (343/1)

不太确定您的日期格式,但我会尝试使用在.strftime(“%d”)创建的
article.created\u
。这将返回一个字符串,因此如果您计划计算某个值,可能会转换为整数。这些值是我要减去的日期的值。我希望结果以天计算。
.to_I
for ruby>=2.0