Clase: Mongo::Collection::View
- Hereda:
-
Objeto
- Objeto
- Mongo::Colección::Ver
- Ampliado por:
- Reenviable
- Incluye:
- Enumerable, Explicable, Inmutable, Iterable, Legible, Escribible
- Definido en:
- lib/mongo/collection/view.rb,
lib/mongo/collection/view/iterable.rb,
lib/mongo/collection/view/readable.rb,
lib/mongo/collection/view/writable.rb,
lib/mongo/collection/view/immutable.rb,
lib/mongo/collection/view/map_reduce.rb,
lib/mongo/collection/view/aggregation.rb,
lib/mongo/collection/view/explainable.rb,
lib/mongo/collection/view/change_stream.rb,
lib/mongo/collection/view/builder/map_reduce.rb,
lib/mongo/collection/view/builder/aggregation.rb,
lib/mongo/collection/view/aggregation/behavior.rb,
lib/mongo/collection/view/change_stream/retryable.rb
Overview
La API View es semipública.
Representación de una query y opciones que produce un conjunto de resultados de documentos.
Se puede modificar un View utilizando asistentes. Los asistentes pueden encadenarse, ya que cada uno devuelve un View si se proporcionan argumentos.
El mensaje de consulta se envía al servidor cuando se llama a un "terminador". Por ejemplo, al llamar a #each en un View, se crea un objeto Cursor, que envía la consulta al servidor.
Un View no lo crea directamente el usuario. En cambio, View crea un View cuando se ejecuta una operación CRUD y lo devuelve al usuario para que interactúe con él.
Definido en el espacio de nombres
Modules: Clases constructoras, explicables, inmutables, iterables, legibles y escribibles: agregación, flujo de cambios, MapReduce
Resumen constante
Constantes incluidas desde Writable
Constantes incluidas de Explainable
Explicable::TODOS_LOS_PLANES_EJECUCIÓN, Explicable::ESTADÍSTICAS_DE_EJECUCIÓN, Explicable::PLANIFICADOR_DE_CONSULTAS
Colapso delresumen de atributos de instancia
-
#colección ⇒ Colección
solo lectura
El
Collectiona consultar. -
#filtro ⇒ Hash (también: #selector)
solo lectura
El filtro de consulta.
-
#operation_timeout_ms ⇒ Entero | nulo | El valor de timeout_ms que se pasó como opción a la vista.
solo lectura
privada
Entero | nulo | El valor timeout_ms que se pasó como opción a la vista.
Atributos incluidos desde Mongo::CursorHost
Atributos incluidos de Immutable
Colapso del resumen del método de instancia
-
#==(otro) ⇒ verdadero, falso (también: #eql?)
Comparar dos objetos
View. -
#hash ⇒ Entero
Un valor hash para
Viewcompuesto por el espacio de nombres de la colección, el hash de las opciones y el hash del filtro. -
#inicializar(colección, filtro = {}, opciones = {}) ⇒ Ver
constructor
Crea un nuevo
View. -
#inspeccionar ⇒ Cadena
Obtenga una representación de cadena legible por humanos de
View. -
#tiempos_de_espera_de_operación(opciones = {}) ⇒ Hash
privada
Valor timeout_ms establecido en el nivel de operación (si lo hay) y/o timeout_ms establecido en el nivel de recopilación/base de datos/cliente (si lo hay).
-
#timeout_ms ⇒ Integer | nil
El valor timeout_ms que se utilizará para esta operación, ya sea especificado como una opción para la vista o heredado de la colección.
-
#escribir_preocupación ⇒ Mongo::WriteConcern
Obtenga la preocupación escrita sobre este
View.
Métodos incluidos en Writable
#delete_many, #delete_one, #find_one_and_delete, #find_one_and_replace, #find_one_and_update, #replace_one, #update_many, #update_one
Métodos incluidos en Explainable
Métodos incluidos en Readable
#agregado, #permitir_uso_de_disco, #permitir_resultados_parciales, #esperar_datos, #tamaño_de_lote, #comentario, #contar, #contar_documentos, #tipo_de_cursor, #distinto, #conteo_estimado_de_documentos, #pista, #límite, #reducción_de_mapa, #tiempo_máximo_de_espera_ms, #escaneo_máximo, #tiempo_máximo_ms, #valor_máximo, #valor_mín, #modificadores, #sin_tiempo_de_espera_del_cursor, #escaneo_paralelo, #proyección, #leer, #preocupación_de_lectura, #preferencia_de_lectura, #tecla_de_retorno, #mostrar_ubicación_de_disco, #omitir, #instantánea, #ordenar
Métodos incluidos de Iterable
#cerrar_consulta, #cada
Métodos incluidos desde Mongo::CursorHost
Detalles del constructor
#inicializar(colección, filtro = {}, opciones = {}) ⇒ Ver
Crea un nuevo View.
169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 |
# Archivo 'lib/mongo/collection/view.rb', línea 169 def inicializar(Colección, filtro = {}, = {}) validate_doc!(filtro) filtro = BSON::Documento.Nuevo(filtro) = BSON::Documento.Nuevo() @recopilación = Colección @tiempo_de_espera_de_operación_ms = .borrar(:tiempo de espera_ms) validate_timeout_mode!() # Esto es cuando los usuarios pasan $query en el filtro y otros modificadores # ¿al lado? Consulta = filtro.borrar(:$consulta) # Esto hace que los modificadores contengan el filtro si el filtro no estaba # proporcionado a través de $query pero como claves de nivel superior, presumiblemente # downstream code ignores non-modifier keys in the modifiers? modifiers = filtro.unir(.borrar(:modifiers) || {}) @filtrar = (Consulta || filtro).freeze @opciones = Operación::Buscar::Builder::Modifiers.(modifiers).¡unir!().freeze end |
Detalles de los atributos de instancia
#colección ⇒ Colección (solo lectura)
Devuelve el Collection a consultar.
56 57 58 |
# Archivo 'lib/mongo/collection/view.rb', línea 56 def Colección @recopilación end |
#filtro ⇒ Hash (solo lectura) También conocido como: selector
Devuelve el filtro de consulta.
59 60 61 |
# Archivo 'lib/mongo/collection/view.rb', línea 59 def filtro @filtrar end |
#operation_timeout_ms ⇒ Integer | nil | El valor de timeout_ms que se pasó como una opción a view. (solo lectura)
Este método forma parte de una API privada. Debe evitarlo si es posible, ya que podría eliminarse o modificarse en el futuro.
Devuelve un entero | nulo | El valor timeout_ms que se pasó como opción a la vista.
81 82 83 |
# Archivo 'lib/mongo/collection/view.rb', línea 81 def tiempo de espera de operación_ms @tiempo_de_espera_de_operación_ms end |
Detalles del método de instancia
#==(otro) ⇒ verdadero, falso También conocido como: eql?
Comparar dos objetos View.
92 93 94 95 96 97 |
# Archivo 'lib/mongo/collection/view.rb', línea 92 def ==(otros) return false a no ser que otros.is_a?(vista) Colección == otros.Colección && filtro == otros.filtro && == otros. end |
#hash ⇒ Entero
Un valor hash para View compuesto por el espacio de nombres de la colección, el hash de las opciones y el hash del filtro.
109 110 111 |
# Archivo 'lib/mongo/collection/view.rb', línea 109 def hash [ Colección.namespace, .hash, filtro.hash ].hash end |
#inspeccionar ⇒ Cadena
Obtenga una representación de cadena legible por humanos de View.
207 208 209 210 |
# Archivo 'lib/mongo/collection/view.rb', línea 207 def inspeccionar "#<Mongo::Collection::View:0x#{object_id} espacio denombres='#{ colección.espacio de nombres}' " + " @filter=#{filtro.to_s} @options=#{opciones.to_s}>" end |
#tiempos_de_espera_de_operación(opciones = {}) ⇒ Hash
Este método forma parte de una API privada. Debe evitarlo si es posible, ya que podría eliminarse o modificarse en el futuro.
Devuelve el valor timeout_ms establecido en el nivel de operación (si lo hay) y/o el timeout_ms establecido en el nivel de colección/base de datos/cliente (si lo hay).
228 229 230 231 232 233 234 235 236 |
# Archivo 'lib/mongo/collection/view.rb', línea 228 def tiempos de espera de operación(opta = {}) {}.grifo hacer |resultado| Si opta[:tiempo de espera_ms] || tiempo de espera de operación_ms resultado[:tiempo de espera_de_operación_ms] = opta[:tiempo de espera_ms] || tiempo de espera de operación_ms else resultado[:tiempo de espera heredado_ms] = Colección.tiempo de espera_ms end end end |
#timeout_ms ⇒ Integer | nil
El valor timeout_ms que se utilizará para esta operación, ya sea especificado como una opción para la vista o heredado de la colección.
195 196 197 |
# Archivo 'lib/mongo/collection/view.rb', línea 195 def tiempo de espera_ms tiempo de espera de operación_ms || Colección.tiempo de espera_ms end |
#escribir_preocupación ⇒ Mongo::WriteConcern
Obtenga la preocupación escrita sobre este View.
220 221 222 |
# Archivo 'lib/mongo/collection/view.rb', línea 220 def escribir_preocupación Escribir preocupación.Obtener([:escribir_preocupación] || [:escribir] || Colección.escribir_preocupación) end |