class Mongoid::Relations::Builders::Referenced::ManyToMany
Public Instance Methods
build(type = nil)
click to toggle source
This builder either takes a hash and queries for the object or an array of documents, where it will just return them.
@example Build the documents.
Builder.new(meta, attrs).build
@param [ String ] type The type of document to query for.
@return [ Array<Document> ] The documents.
# File lib/mongoid/relations/builders/referenced/many_to_many.rb, line 17 def build(type = nil) return object.try(:dup) unless query? ids = object || [] crit = metadata.criteria(ids, base.class) IdentityMap.get(crit.klass, ids) || crit end
query?()
click to toggle source
Do we need to perform a database query? It will be so if the object we have is not a document.
@example Should we query the database?
builder.query?
@return [ true, false ] Whether a database query should happen.
@since 2.0.0.rc.1
# File lib/mongoid/relations/builders/referenced/many_to_many.rb, line 33 def query? object.nil? || !object.first.is_a?(Mongoid::Document) end