module LeftJoin::Adapters::ActiveRecordAdapter

Public Instance Methods

left_join(*columns) click to toggle source

Does a left join through an association. Usage:

Book.left_join(:category)
# SELECT "books".* FROM "books"
# LEFT OUTER JOIN "categories"
# ON "books"."category_id" = "categories"."id"

It also works through association's associations, like `joins` does:

Book.left_join(category: :master_category)
# File lib/left_join/adapters/active_record_adapter.rb, line 14
def left_join(*columns)
  join_dependency = ActiveRecord::Associations::JoinDependency.new(self, columns, [])
  if RAILS4_1_PLUS
    joins(join_dependency)
  else
    join_dependency.join_associations.inject(self) do |result, association|
      association.join_relation(result)
    end
  end
end
Also aliased as: left_joins
left_joins(*columns)
Alias for: left_join