Method: ActiveNode::FinderMethods#first

Defined in:
lib/active_node/graph/finder_methods.rb

#first(limit = nil) ⇒ Object

Find the first record (or first N records if a parameter is supplied). If no order is defined it will order by primary key.

Person.first # returns the first object fetched by SELECT * FROM people
Person.where(["user_name = ?", user_name]).first
Person.where(["user_name = :u", { u: user_name }]).first
Person.order("created_on DESC").offset(5).first
Person.first(3) # returns the first three objects fetched by SELECT * FROM people LIMIT 3

Rails 3

Person.first # SELECT "people".* FROM "people" LIMIT 1

NOTE: Rails 3 may not order this query by the primary key and the order will depend on the database implementation. In order to ensure that behavior, use User.order(:id).first instead.

Rails 4

Person.first # SELECT "people".* FROM "people" ORDER BY "people"."id" ASC LIMIT 1


126
127
128
129
130
131
132
# File 'lib/active_node/graph/finder_methods.rb', line 126

def first(limit = nil)
  if limit
    find_nth_with_limit(offset_value, limit)
  else
    find_nth(:first, offset_value)
  end
end