Module: Mongoid::Contextual

Extended by:
Forwardable
Included in:
Criteria
Defined in:
lib/mongoid/contextual.rb,
lib/mongoid/contextual/none.rb,
lib/mongoid/contextual/mongo.rb,
lib/mongoid/contextual/atomic.rb,
lib/mongoid/contextual/memory.rb,
lib/mongoid/contextual/command.rb,
lib/mongoid/contextual/geo_near.rb,
lib/mongoid/contextual/queryable.rb,
lib/mongoid/contextual/aggregable.rb,
lib/mongoid/contextual/map_reduce.rb,
lib/mongoid/contextual/aggregable/none.rb,
lib/mongoid/contextual/aggregable/mongo.rb,
lib/mongoid/contextual/aggregable/memory.rb,
lib/mongoid/contextual/mongo/documents_loader.rb

Overview

Parent mixin module which adds aggregation (#sum, #avg, etc.) and atomic (#set, #unset, #push, etc.) behavior to Mongoid::Criteria.

Defined Under Namespace

Modules: Aggregable, Atomic, Command, Queryable Classes: GeoNear, MapReduce, Memory, Mongo, None

Instance Method Summary collapse

Instance Method Details

#contextMemory | Mongo

Get the context in which criteria queries should execute. This is either in memory (for embedded documents) or mongo (for root level documents.)

Examples:

Get the context.

criteria.context

Returns:



38
39
40
# File 'lib/mongoid/contextual.rb', line 38

def context
  @context ||= create_context
end

#load_asyncCriteria

Instructs the context to schedule an asynchronous loading of documents specified by the criteria.

Note that depending on the context and on the Mongoid configuration, documents can be loaded synchronously on the caller’s thread.

Returns:



49
50
51
52
# File 'lib/mongoid/contextual.rb', line 49

def load_async
  context.load_async if context.respond_to?(:load_async)
  self
end