2010-05-16 17 views
9

Mi piacerebbe fare è sapere se un utente è stato creato nel sistema negli ultimi 10 secondi. quindi vorrei fare:Ruby confronto date

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

IT è solo un'idea, come posso farlo correttamente? ringraziamento

risposta

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 

(presumendo che la classe User è un modello ActiveRecord.)

3
User.created_at > 10.seconds.ago