Is find() a class method or instance method?

Dear friends,

I came across this code snippet from my reading:

    require 'active_record'

    class Order < ActiveRecord::Base     end

    order = Order.find(1)     ...

Looking at: http://api.rubyonrails.org/ and search for find(), find() is an instance public method. So why can we call Order.find(1) here? Shouldn't it be Order.new.find(1)?

No, because although it is a public instance method, it’s a public instance method of ActiveRecord::Relation, not of ActiveRecord::Base. ActiveRecord delegates the find method (and the other querying type methods such as where, first, all etc.) to an instance of this

Fred