module ActiveAny::Relation::FinderMethods

Public Instance Methods

find_by(condition) click to toggle source
# File lib/active_any/relation/finder_methods.rb, line 6
def find_by(condition)
  where(condition).take
end
first(limit = nil) click to toggle source
# File lib/active_any/relation/finder_methods.rb, line 10
def first(limit = nil)
  if loaded
    limit ? records.first(limit) : records.first
  else
    limit ? spawn.records.first(limit) : spawn.records.first
  end
end
last(limit = nil) click to toggle source
# File lib/active_any/relation/finder_methods.rb, line 18
def last(limit = nil)
  return find_last(limit) if loaded? || limit_value

  result = limit(limit)
  result.order!(klass.primary_key) if order_clause.empty? && klass.primary_key
  result = result.reverse_order!
  limit ? result.reverse : result.first
end

Private Instance Methods

find_last(limit) click to toggle source
# File lib/active_any/relation/finder_methods.rb, line 29
def find_last(limit)
  limit ? records.last(limit) : records.last
end