Módulo: Mongoid::Criteria::Marshalable

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

Overview

Módulo Mixin para Mongoid::Criteria que agrega funcionalidad personalizada Marshal.dump.

Colapso del resumen del método de instancia

Detalles del método de instancia

#marshal_dumpMatriz<Object>

Proporciona los datos necesarios para Marshal.dump según un criterio.

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

Ejemplos:

Descartar los criterios.

Marshal.dump(criteria)

Devuelve:

  • (Matriz<Object>)

    Los datos volcados.



20
21
22
23
# Archivo 'lib/mongoid/criteria/marshalable.rb', línea 20

def volcado de mariscal
  datos = [ klass, :mongo, inclusiones, Documentos, estrategia, negando ]
  datos.Push(opciones de alcance).Push(volcado_hash(:selector)).Push(volcado_hash(:opciones))
end

#marshal_load(datos) ⇒ Objeto

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

Ejemplos:

Cargar los criterios.

Marshal.load(criteria)

Parámetros:

  • datos (Matriz)

    Los datos sin procesar.



31
32
33
34
35
36
37
38
39
40
41
# Archivo 'lib/mongoid/criteria/marshalable.rb', línea 31

def carga de mariscal(datos)
  @opciones_de_alcance, selector_raw, opciones_sin_procedimiento = datos.pop(3)
  @klass, controlador, @inclusiones, @documents, @strategy, @negando = datos

  Si controlador == :mongo1x
    propagar NotImplementedError, "Mongoidya no admite el marshalling con la versión del 1 controlador.x."
  end

  @selector = cargar_hash(Consultable::Selector, selector_raw)
  @opciones = cargar_hash(Consultable::opciones, opciones_sin_procedimiento)
end