Class: PassiveRecord::Core::DisjoinedQuery

Inherits:
Query
  • Object
show all
Defined in:
lib/passive_record/core/query.rb

Instance Attribute Summary

Attributes inherited from Query

#conditions

Instance Method Summary collapse

Methods inherited from Query

#and, #basic?, #conjoined?, #create, #each, #evaluate_condition, #evaluate_nested_conditions, #first_or_create, #matching_instances, #method_missing, #negated?, #not, #or, #raw_all, #where

Methods included from ArithmeticHelpers

#average, #mode, #pluck, #sum

Constructor Details

#initialize(klass, first_query, second_query, conditions = {}) ⇒ DisjoinedQuery

Returns a new instance of DisjoinedQuery.



157
158
159
160
161
162
# File 'lib/passive_record/core/query.rb', line 157

def initialize(klass, first_query, second_query, conditions={})
  @klass = klass
  @first_query = first_query
  @second_query = second_query
  @conditions = conditions
end

Dynamic Method Handling

This class handles dynamic methods through the method_missing method in the class PassiveRecord::Core::Query

Instance Method Details

#allObject



164
165
166
# File 'lib/passive_record/core/query.rb', line 164

def all
  (@first_query.where(conditions).all + @second_query.where(conditions).all).uniq
end

#disjoined?Boolean

Returns:

  • (Boolean)


168
169
170
# File 'lib/passive_record/core/query.rb', line 168

def disjoined?
  true
end