Ruby比较日期

时间:2010-05-16 01:20:54

标签: ruby-on-rails ruby date

我想知道是否在过去10秒内在系统中创建了用户。 所以我会这样做:

  def new_user
    if(DateTime.now - User.created_at < 10)
      return true
    else 
      return false 
    end
  end

IT只是一个想法,我该怎么做才能正确? 谢谢

2 个答案:

答案 0 :(得分:10)

class User < ActiveRecord::Base
  def new?
    created_at > 10.seconds.ago
  end
end

# Example:
user = User.create!
user.new?
#=> true

sleep 11
user.new?
#=> false

(假设您的User班级是ActiveRecord型号。)

答案 1 :(得分:3)

User.created_at > 10.seconds.ago