Clase: Mongoid::Criteria::Queryable::Smash

Hereda:
Picadillo
  • Objeto
Mostrar todo
Definido en:
lib/mongoid/criteria/queryable/smash.rb

Overview

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

Subclases conocidas directas

Opciones, Selector

Resumen de atributos de la instancia colapsar

Resumen del método de instancia colapsar

Detalles del constructor

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

Inicializa el nuevo selector.

Ejemplos:

Inicializa el nuevo selector.

Queryable::Smash.new(aliases, serializers)

Parámetros:

  • aliases (Hash) (por defecto: {})

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

  • Serializadores (Hash) (por defecto: {})

    Un hash opcional de objetos que son 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) (por defecto: {})

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

  • asociaciones_aliasadas (Hash) (por defecto: {})

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

Rendimientos:

  • (_self)

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(sí mismo) si ¿block_given?
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

attr_reader :asociaciones_aliasadas

#aliasesObjeto (solo lectura)

Devuelve el valor del atributo aliases.



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

attr_reader :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.(Las asociaciones.) ⇒ Objeto (solo lectura)



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

attr_reader :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

attr_reader /:serializers

Detalles del método de instancia

#[](key) ⇒ Objeto

Obtener un elemento del hash inteligente mediante la clave proporcionada.

Ejemplos:

Consigue un objeto mediante la llave.

smash["test"]

Parámetros:

  • llave (string)

    La clave.

Devuelve:

  • (objeto)

    El objeto encontrado.



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

def [](llave)
  obtener(aliases[llave]) { super }
end

#__deep_copy__Smash

Realizar una copia profunda de smashes.

Ejemplos:

Realiza una copia profunda.

smash.__deep_copy__

Devuelve:



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

def __deep_copy__
  sí mismo.clase.Nuevo(aliases, Serializadores, asociaciones, asociaciones_aliasadas) hacer |copy|
    each_pair hacer |llave, Valor|
      copy.store(llave, Valor.__deep_copy__)
    end
  end
end