Module: Queryable::Mongoid

Defined in:
lib/queryable/mongoid.rb

Constant Summary collapse

DELEGATED_METHODS =
[
  :avg, :max, :min, :sum, :exists?, :set, :pull, :push, :add_to_set,
  :find_by, :build, :create, :destroy, :destroy_all, :update, :update_all,
  :delete, :pluck, :distinct, :selector, :rename, :entries, :new, :explain
]
CHAINABLE_METHODS =
[
  :where, :ne, :nin, :gt, :gte, :in, :lt, :lte, :between, :and, :or, :not,
  :intersect, :override, :union, :exists, :elem_match, :with_size,
  :none, :unscoped, :includes, :order_by, :asc, :desc, :skip, :limit
]

Class Method Summary collapse

Class Method Details

.included(base) ⇒ Object

Internal: Adds class methods, and default initialization.



23
24
25
26
27
28
# File 'lib/queryable/mongoid.rb', line 23

def self.included(base)
  base.send(:include, Chainable, DefaultQuery, DefaultScope, ::Queryable)

  base.delegate *DELEGATED_METHODS
  base.delegate_and_chain *CHAINABLE_METHODS
end