Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/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:比较两个时间对象的日期_Ruby_Date_Datetime_Time - Fatal编程技术网

Ruby:比较两个时间对象的日期

Ruby:比较两个时间对象的日期,ruby,date,datetime,time,Ruby,Date,Datetime,Time,在Ruby中比较两个时间对象的日期的最佳方法是什么 我有两个对象,例如: time_1 = Time.new(2012,12,10,10,10) time_2 = Time.new(2012,12,11,10,10) 在本例中,日期比较应返回false 否则,相同日期但不同时间应返回true: time_1 = Time.new(2012,12,10,10,10) time_2 = Time.new(2012,12,10,11,10) 我曾尝试使用适用于DateTime对象的.to\u da

在Ruby中比较两个时间对象的日期的最佳方法是什么

我有两个对象,例如:

time_1 = Time.new(2012,12,10,10,10)
time_2 = Time.new(2012,12,11,10,10)
在本例中,日期比较应返回false

否则,相同日期但不同时间应返回true:

time_1 = Time.new(2012,12,10,10,10)
time_2 = Time.new(2012,12,10,11,10)

我曾尝试使用适用于
DateTime
对象的
.to\u date
,但它不受
Time

的支持。to\u date在ruby 2.0、ruby 1.9.3和ruby 1.9.2中运行良好


我已经证实这对我有效:

time_1.strftime("%F") == time_2.strftime("%F")

%F
格式仅返回日期部分。

可能只是以这种方式进行测试:

time_1.year == time_2.year && time_1.yday == time_2.yday
它将比字符串比较消耗更少的资源

猴子补丁的课堂时间与此方法,我会很高兴阅读

class Time
  def date_compare(time)
    year == time.year && yday == time_2.yday
  end
end

time_1.date_compare time_2

只需输入stdlib的“日期”部分,然后比较日期:

require "date"
time1.to_date == time2.to_date

工作完成。

在比较两个时间对象时,
=
有什么问题?只要
如果time_1==time_2…
time_1==time_2#=>falsetime_1true我只想比较日期。我将编辑这个问题以澄清问题。我得到以下错误:
NoMethodError:undefined method
to_date',用于2012-12-10 10:10:00+0100:Time`嗨,我在createdAt中有一列,其值为“2016-06-13T08:59:58+00:00”,我想通过createdAt运行一个查询来查找对象,并从前端发送“2016-06-13”。如何按日期(不包括时间)查找对象?提前谢谢
class Time
  def date_compare(time)
    year == time.year && yday == time_2.yday
  end
end

time_1.date_compare time_2
require "date"
time1.to_date == time2.to_date