Class: Mongoid::Association::One

Inherits:
Association::Proxy
  • Object
show all
Defined in:
lib/mongoid/association/one.rb

Overview

This is the superclass for one to one relations and defines the common behavior or those proxies.

Instance Method Summary collapse

Instance Method Details

#__evolve_object_id__Object

Evolve the proxy document into an object id.

Examples:

Evolve the proxy document.

proxy.__evolve_object_id__

Returns:

  • (Object)

    The proxy document's id.



46
47
48
# File 'lib/mongoid/association/one.rb', line 46

def __evolve_object_id__
  _target._id
end

#cleartrue | false

Clear this relation - same as calling #delete on the document.

Examples:

Clear the relation.

relation.clear

Returns:

  • (true | false)

    If the delete succeeded.



14
15
16
# File 'lib/mongoid/association/one.rb', line 14

def clear
  _target.delete
end

#in_memoryArray<Document>

Get all the documents in the relation that are loaded into memory.

Examples:

Get the in memory documents.

relation.in_memory

Returns:

  • (Array<Document>)

    The documents in memory.



24
25
26
# File 'lib/mongoid/association/one.rb', line 24

def in_memory
  [ _target ]
end

#respond_to?(name, include_private = false) ⇒ true | false

Since method_missing is overridden we should override this as well.

Examples:

Does the proxy respond to the method?

relation.respond_to?(:name)

Parameters:

  • name (Symbol)

    The method name.

Returns:

  • (true | false)

    If the proxy responds to the method.



36
37
38
# File 'lib/mongoid/association/one.rb', line 36

def respond_to?(name, include_private = false)
  _target.respond_to?(name, include_private) || super
end