有人可以解释d1如何大于d2吗?他们是相同的约会日期(或至少他们看起来如何)。
Loading development environment (Rails 3.0.8)
ruby-1.9.2-p180 :001 > d1 = Event.first.updated_at
=> Thu, 22 Sep 2011 02:24:28 PDT -07:00
ruby-1.9.2-p180 :002 > d2 = Time.zone.parse("2011-09-22T02:24:28-07:00")
=> Thu, 22 Sep 2011 02:24:28 PDT -07:00
ruby-1.9.2-p180 :003 > d1.class
=> ActiveSupport::TimeWithZone
ruby-1.9.2-p180 :004 > d2.class
=> ActiveSupport::TimeWithZone
ruby-1.9.2-p180 :005 > d1 > d2
=> true
ruby-1.9.2-p180 :006 >
关于我的特定应用程序需求...我有一个iOS应用程序向我的Rails应用程序发出请求,传递一个JSON对象,其中包括格式为“2011-09-22T02:24”的NSDates :28-07:00“。我正在尝试将该日期时间与ActiveSupport :: TimeWithZone类型的“updated_at”进行比较。
谢谢 - wg
答案 0 :(得分:20)
您会发现事件模型中的updated_at
属性的精度高于秒。
尝试输出各自时间对象的毫秒部分:
puts d1.usec
puts d2.usec
前者可能是> 0因为它是在持久化对象时自动设置的,而后者将等于0,因为你没有在解析它的字符串中指定任何毫秒。