Skip to content

Instantly share code, notes, and snippets.

View claptimes5's full-sized avatar

Avi Leavitt claptimes5

View GitHub Profile
#http://stackoverflow.com/a/15413611/270511
module Unionable
extend ActiveSupport::Concern
module ClassMethods
def union_scope(*scopes)
id_column = "#{table_name}.id"
if (sub_query = scopes.reject { |sc| sc.count == 0 }.map { |s| s.select(id_column).to_sql }.join(" UNION ")).present?