Módulo: Mongoid::Criteria::Marshalable

Incluido en:
Mongoid::Criteria
Definido en:
lib/mongoid/criteria/marshalable.rb

Overview

Módulo mixin para Mongoid::Criteria que añade la funcionalidad personalizada de Marshal.vaciado.

Resumen del método de instancia colapsar

Detalles del método de instancia

#marshal_dumparreglo<Object>

Proporciona los datos necesarios para Marshal.vaciado un criterio.

Nota: aquí se escribe :mongo para mantener la compatibilidad con versiones anteriores de Mongoid 7 y anteriores.

Ejemplos:

Vacía los criterios.

Marshal.dump(criteria)

Devuelve:

  • (arreglo<Object>)

    Los datos volcados.



17
18
19
20
# Archivo 'lib/mongoid/criteria/marshalable.rb', línea 17

def marshal_dump
  Datos = [ klass, mongo, inclusiones, Documentos, estrategia, negar, use_lookup? ]
  Datos.push(scoping_options).push(dump_hash(Selector:)).push(dump_hash(:options))
end

#marshal_load(data) ⇒ Objeto

Restablece el objeto de criterios después de un Marshal.load

Ejemplos:

Cargue los criterios.

Marshal.load(criteria)

Parámetros:

  • Datos (arreglo)

    Los datos sin procesar.



28
29
30
31
32
33
34
35
36
37
38
# Archivo 'lib/mongoid/criteria/marshalable.rb', línea 28

def marshal_load(Datos)
  @scoping_options, raw_selector, raw_options = Datos.pop(3)
  @klass, controlador, @inclusion, @documents, @strategy, @negando, @use_lookup = Datos

  si controlador == :mongo1x
    propagar NotImplementedError, 'Mongoid ya no soporta marshalling con driver versión 1.x.'
  end

  @selector = load_hash(Consultable::Selector, raw_selector)
  @options = load_hash(Consultable::opciones, raw_options)
end