Clase: Mongoid::Criterios::Consultable::Smash

Hereda:
Picadillo
  • Objeto
Mostrar todo
Definido en:
lib/mongoid/criterios/consultable/smash.rb

Overview

Este es un hash inteligente para usar con opciones y selectores.

Subclases conocidas directas

Opciones, Selector

Colapso delresumen de atributos de instancia

Colapso del resumen del método de instancia

Detalles del constructor

#inicializar(alias = {}, serializadores = {}, asociaciones = {}, asociaciones_aliasadas = {}) {|_self|... } ⇒ Smash

Inicializar el nuevo selector.

Ejemplos:

Inicializar el nuevo selector.

Queryable::Smash.new(aliases, serializers)

Parámetros:

  • aliases (Hash) (predeterminado: {})

    Un hash de asignaciones de alias a los nombres de campo reales en la base de datos.

  • serializadores (Hash) (predeterminado: {})

    Un hash opcional de objetos responsables de serializar valores. Las claves del hash deben ser cadenas que coincidan con el nombre del campo, y los valores deben responder a #localized? y #evolve(object).

  • asociaciones (Hash) (predeterminado: {})

    Un hash opcional de nombres a objetos de asociación.

  • asociaciones_aliasadas (Hash) (predeterminado: {})

    Un hash opcional de asignaciones de alias para asociaciones a sus nombres de campo reales en la base de datos.

Rendimientos:

  • (_ser)

Parámetros de rendimiento:



52
53
54
55
56
57
58
# Archivo 'lib/mongoid/criteria/queryable/smash.rb', línea 52

def inicializar(aliases = {}, serializadores = {}, asociaciones = {}, asociaciones_aliasadas = {})
  @aliases = aliases
  @serializadores = serializadores
  @asociaciones = asociaciones
  @aliased_associations = asociaciones_aliasadas
  rendimiento(yo) Si ¿bloque_dado?
end

Detalles de los atributos de instancia

#aliased_associationsObjeto (solo lectura)

Devuelve el valor del atributo aliased_associations.



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

def asociaciones_aliasadas
  @aliased_associations
end

#aliased_associations Las aliased_associations.(Thealiased_associations.) ⇒ Objeto (solo lectura)



21
# Archivo 'lib/mongoid/criteria/queryable/smash.rb', línea 21

lector de atributos :asociaciones_aliasadas

#aliasObjeto (solo lectura)

Devuelve el valor de los alias de atributos.



12
13
14
# Archivo 'lib/mongoid/criteria/queryable/smash.rb', línea 12

def aliases
  @aliases
end

#alias Los alias.(Thealiases.) ⇒ Objeto (solo lectura)



12
# Archivo 'lib/mongoid/criteria/queryable/smash.rb', línea 12

lector de atributos :aliases

#asociacionesObjeto (solo lectura)

Devuelve el valor de las asociaciones de atributos.



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

def asociaciones
  @asociaciones
end

#asociaciones Las asociaciones.(Lasasociaciones.) ⇒ Objeto (solo lectura)



18
# Archivo 'lib/mongoid/criteria/queryable/smash.rb', línea 18

lector de atributos :asociaciones

#serializadoresObjeto (solo lectura)

Devuelve el valor de los serializadores de atributos.



15
16
17
# Archivo 'lib/mongoid/criteria/queryable/smash.rb', línea 15

def serializadores
  @serializadores
end

#serializadores Los serializadores.(Los serializadores.) ⇒ Objeto (solo lectura)



15
# Archivo 'lib/mongoid/criteria/queryable/smash.rb', línea 15

lector de atributos :serializadores

Detalles del método de instancia

#[](tecla) ⇒ Objeto

Obtenga un elemento del hash inteligente mediante la clave proporcionada.

Ejemplos:

Consigue un objeto mediante la llave.

smash["test"]

Parámetros:

  • clave (Cadena) -

    La clave.

Devuelve:

  • (Objeto) -

    El objeto encontrado.



68
69
70
# Archivo 'lib/mongoid/criteria/queryable/smash.rb', línea 68

def [](clave)
  Fetch(aliases[clave]) { Super }
end

#__deep_copy__Smash

Realizar una copia profunda del smash.

Ejemplos:

Realizar una copia profunda.

smash.__deep_copy__

Devuelve:

  • (Aplastar)

    El hash copiado.



29
30
31
32
33
34
35
# Archivo 'lib/mongoid/criteria/queryable/smash.rb', línea 29

def __copia_profunda__
  yo.clase.Nuevo(aliases, serializadores, asociaciones, asociaciones_aliasadas) hacer |copy|
    each_pair hacer |clave, valor|
      copy.store(clave, valor.__copia_profunda__)
    end
  end
end