Módulo: Mongoid::Clientes::Opciones

Ampliado por:
ActiveSupport::Preocupación
Incluido en:
Mongoid::Clientes, Mongoid::Criterios
Definido en:
lib/mongoid/clients/options.rb

Overview

Módulo Mixin incluido en Mongoid::Document que permite gestionar el contexto de la base de datos para operaciones de persistencia y consulta. Por ejemplo, esto incluye guardar documentos en diferentes colecciones y leerlos desde instancias secundarias.

Definido en el espacio de nombres

Modules: Métodos de clase

Colapso del resumen del método de instancia

Detalles del método de instancia

#colección(padre = nulo) ⇒ Mongo::Collection

Obtenga la colección para el contexto de persistencia actual del documento.

Ejemplos:

Obtenga la colección para el contexto de persistencia actual.

document.collection

Parámetros:

  • padre (Objeto) (predeterminado: nulo)

    El objeto principal cuyo nombre de colección se utiliza en lugar del nombre de colección del contexto de persistencia actual.

Devuelve:

  • (Mongo::Colección)

    La colección para el contexto de persistencia actual.



47
48
49
# Archivo 'lib/mongoid/clients/options.rb', línea 47

def Colección(padre = nulo)
  contexto de persistencia.Colección(padre)
end

#nombre_de_colecciónCadena

Obtenga el nombre de la colección para el contexto de persistencia actual del documento.

Ejemplos:

Obtén el nombre de la colección para el contexto de persistencia actual.

document.collection_name

Devuelve:

  • (Cadena) -

    El nombre de la colección para el contexto de persistencia actual.



58
59
60
# Archivo 'lib/mongoid/clients/options.rb', línea 58

def nombre_de_colección
  contexto de persistencia.nombre_de_colección
end

#mongo_clientMongo::Cliente

Obtenga el cliente de base de datos para el contexto de persistencia actual del documento.

Ejemplos:

Obtenga el cliente para el contexto de persistencia actual.

document.mongo_client

Devuelve:

  • (Mongo::Cliente)

    El cliente para el contexto de persistencia actual.



69
70
71
# Archivo 'lib/mongoid/clients/options.rb', línea 69

def cliente mongo
  contexto de persistencia.Cliente
end

#contexto_de_persistenciaMongoid::ContextoDePersistencia

Nota:

Para los documentos incrustados, se devuelve el contexto de persistencia del documento principal raíz.

Obtener el contexto de persistencia actual del documento.

Ejemplos:

Obtener el contexto de persistencia actual.

document.persistence_context

Devuelve:



83
84
85
86
87
88
89
90
91
# Archivo 'lib/mongoid/clients/options.rb', línea 83

def contexto de persistencia
  Si ¿incorporado? && !_root?
    _root.contexto de persistencia
  else
    Contexto de persistencia.Obtener(yo) ||
      Contexto de persistencia.Obtener(yo.clase) ||
      Contexto de persistencia.Nuevo(yo.clase, opciones_de_almacenamiento_predeterminadas)
  end
end

#contexto_de_persistencia?verdadero | falso

Nota:

Para los documentos incrustados, se utiliza el contexto de persistencia del documento principal raíz.

Devuelve si un contexto de persistencia está establecido para el documento o la clase del documento.

Ejemplos:

Obtener el contexto de persistencia actual.

document.persistence_context?

Devuelve:

  • (verdadero | falso)

    Si se establece un contexto de persistencia.



103
104
105
106
107
108
109
110
111
# Archivo 'lib/mongoid/clients/options.rb', línea 103

def ¿contexto_de_persistencia?
  Si ¿incorporado? && !_root?
    _root.¿contexto_de_persistencia?
  else
    remembered_storage_options&.any? ||
      Contexto de persistencia.Obtener(yo).¿presente? ||
      Contexto de persistencia.Obtener(yo.clase).¿presente?
  end
end

#con(opciones_o_contexto, &bloque) ⇒ Objeto

Cambia el contexto de persistencia de este objeto durante el bloqueo.

Ejemplos:

Guardar el documento actual en una colección diferente.

model.with(collection: "bands") do |m|
  m.save
end

Parámetros:

  • options_or_context (Hash | Mongoide::PersistenceContext)

    Las opciones de almacenamiento o un contexto de persistencia.

  • opciones (Hash)

    un conjunto personalizable de opciones



28
29
30
31
32
33
34
35
# Archivo 'lib/mongoid/clients/options.rb', línea 28

def con(options_or_context, Ybloque)
  contexto original = Contexto de persistencia.Obtener(yo)
  clúster original = contexto de persistencia.clúster
  establecer_contexto_de_persistencia(options_or_context)
  rendimiento yo
asegurar
  contexto de persistencia clara(clúster original, contexto original)
end