Módulo: Mongoid::Criteria::Modifiable

Incluido en:
Mongoid::Criterios
Definido en:
lib/mongoid/criterios/modificable.rb

Overview

Módulo Mixin para Mongoid::Criteria que agrega la capacidad de construir o crear nuevos documentos con atributos inicializados a las condiciones de los criterios.

Colapso delresumen de atributos de instancia

Colapso del resumen del método de instancia

Detalles de los atributos de instancia

#create_attrsObjeto (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.



14
15
16
# Archivo 'lib/mongoid/criteria/modifiable.rb', línea 14

def create_attrs
  @create_attrs
end

#create_attrs Atributos adicionales para agregar al documento al crearlo.(Atributos adicionales para agregar al documento al crearlo). ⇒ Objeto (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.



14
# Archivo 'lib/mongoid/criteria/modifiable.rb', línea 14

lector de atributos :create_attrs

Detalles del método de instancia

#build(attrs = {}, &block) ⇒ Documento También conocido como: nuevo

Crea un documento dado el selector y devuélvelo. Se ignorarán criterios complejos, como las operaciones $in y $or.

Ejemplos:

Construir el documento.

Person.where(:title => "Sir").build

Construya con selectores que se ignorarán.

Person.where(:age.gt => 5).build

Devuelve:



26
27
28
# Archivo 'lib/mongoid/criteria/modifiable.rb', línea 26

def construir(attrs = {}, Ybloque)
  create_document(:nuevo, attrs, Ybloque)
end

#crear(attrs = {}, &block) ⇒ Documento

Crea un documento en la base de datos según el selector y devuélvelo. Se ignorarán criterios complejos, como las operaciones $in y $or.

Ejemplos:

Crear el documento.

Person.where(:title => "Sir").create

Crear con selectores que se ignoran.

Person.where(:age.gt => 5).create

Devuelve:



41
42
43
# Archivo 'lib/mongoid/criteria/modifiable.rb', línea 41

def Cree(attrs = {}, Ybloque)
  create_document(:crear, attrs, Ybloque)
end

#¡crear!(attrs = {}, &block) ⇒ Documento

Crea un documento en la base de datos según el selector y devuélvelo. Se ignorarán criterios complejos, como las operaciones $in y $or. Si la validación falla, se generará un error.

Ejemplos:

Crear el documento.

Person.where(:title => "Sir").create

Crear con selectores que se ignoran.

Person.where(:age.gt => 5).create

Devuelve:

Aumentos:



58
59
60
# Archivo 'lib/mongoid/criteria/modifiable.rb', línea 58

def ¡crear!(attrs = {}, Ybloque)
  create_document(:¡crear!, attrs, Ybloque)
end

#crear_con(atributos = {}) ⇒ Mongoid::Criteria

Define los atributos con los que se crearán los nuevos documentos.

Tenga en cuenta que si se llama 'find_or_create_by' después de esto en una cadena de métodos, los atributos en la consulta anularán los de este método.

Ejemplos:

Defines los atributos que se deben usar cuando se crea un nuevo documento.

Person.create_with(job: 'Engineer').find_or_create_by(employer: 'MongoDB')

Devuelve:



71
72
73
74
75
76
# Archivo 'lib/mongoid/criteria/modifiable.rb', línea 71

def crear_con(attrs = {})
  grifo hacer
    @create_attrs ||= {}
    @create_attrs.update(attrs)
  end
end

#buscar_o_crear_por(atributos = {}, &bloque) ⇒ Documento

Encuentra el primer Document dadas las condiciones, o crea un nuevo documento con las condiciones proporcionadas.

Ejemplos:

Busque o cree el documento.

Person.find_or_create_by(:attribute => "value")

Parámetros:

  • attrs (Hash) (predeterminado: {})

    Los atributos a comprobar.

Devuelve:

  • (Documento) -

    Un documento coincidente o recién creado.



87
88
89
# Archivo 'lib/mongoid/criteria/modifiable.rb', línea 87

def buscar_o_crear_por(attrs = {}, Ybloque)
  encontrar_o(:crear, attrs, Ybloque)
end

#buscar_o_crear_por!(attrs = {}, &block) ⇒ Documento

Encuentra el primer Document dadas las condiciones o crea un nuevo documento con las condiciones proporcionadas. Si la validación falla, se generará una excepción.

Ejemplos:

Busque o cree el documento.

Person.find_or_create_by!(:attribute => "value")

Parámetros:

  • attrs (Hash) (predeterminado: {})

    Los atributos a comprobar.

Devuelve:

  • (Documento) -

    Un documento coincidente o recién creado.

Aumentos:



103
104
105
# Archivo 'lib/mongoid/criteria/modifiable.rb', línea 103

def ¡Buscar_o_crear_por!(attrs = {}, Ybloque)
  encontrar_o(:¡crear!, attrs, Ybloque)
end

#buscar_o_inicializar_por(atributos = {}, &bloque) ⇒ Documento

Encuentra el primer Document dadas las condiciones, o inicializa un nuevo documento con las condiciones que se proporcionaron.

Ejemplos:

Busque o inicialice el documento.

Person.find_or_initialize_by(:attribute => "value")

Parámetros:

  • attrs (Hash) (predeterminado: {})

    Los atributos a comprobar.

Devuelve:

  • (Documento) -

    Un documento coincidente o recientemente inicializado.



116
117
118
# Archivo 'lib/mongoid/criteria/modifiable.rb', línea 116

def buscar_o_inicializar_por(attrs = {}, Ybloque)
  encontrar_o(:nuevo, attrs, Ybloque)
end

#first_or_create(attrs = nil, &block) ⇒ Documento

Encuentra el primer Document o crea un nuevo documento con las condiciones proporcionadas más los atributos.

Ejemplos:

Primero, cree o cree el documento.

Person.where(name: "Jon").first_or_create(attribute: "value")

Parámetros:

  • attrs (Hash) (predeterminado: nulo)

    Los atributos adicionales a agregar.

Devuelve:

  • (Documento) -

    Un documento coincidente o recién creado.



129
130
131
# Archivo 'lib/mongoid/criteria/modifiable.rb', línea 129

def primero_o_crear(attrs = nulo, Ybloque)
  primero_o(:crear, attrs, Ybloque)
end

#¡primero_o_crear!(atributos = nulo, &bloque) ⇒ Documento

Encuentra el primer Document o crea un nuevo documento con las condiciones proporcionadas más los atributos y generará un error si falla la validación.

Ejemplos:

Primero, cree o cree el documento.

Person.where(name: "Jon").first_or_create!(attribute: "value")

Parámetros:

  • attrs (Hash) (predeterminado: nulo)

    Los atributos adicionales a agregar.

Devuelve:

  • (Documento) -

    Un documento coincidente o recién creado.



143
144
145
# Archivo 'lib/mongoid/criteria/modifiable.rb', línea 143

def ¡primero_o_crear!(attrs = nulo, Ybloque)
  primero_o(:¡crear!, attrs, Ybloque)
end

#first_or_initialize(attrs = nil, &block) ⇒ Documento

Encuentra el primer Document o inicializa un nuevo documento con las condiciones y atributos especificados.

Ejemplos:

Primero o inicializar el documento.

Person.where(name: "Jon").first_or_initialize(attribute: "value")

Parámetros:

  • attrs (Hash) (predeterminado: nulo)

    Los atributos adicionales a agregar.

Devuelve:

  • (Documento) -

    Un documento coincidente o recientemente inicializado.



156
157
158
# Archivo 'lib/mongoid/criteria/modifiable.rb', línea 156

def primero_o_inicializar(attrs = nulo, Ybloque)
  primero_o(:nuevo, attrs, Ybloque)
end