module ESA::Traits::OrScope::ClassMethods
Public Instance Methods
or_scope(*scopes)
click to toggle source
# File app/models/esa/traits/or_scope.rb, line 16 def or_scope(*scopes) conditions = scopes .map { |scope| "(#{scope.where_clauses.map{ |clause| "(#{clause})"}.join(" AND ")})" } .join(" OR ") relationships = scopes .map { |scope| scope.joins_values } .flatten .uniq joins(*relationships).where(conditions) end