Módulo: Mongoid::Persistable::Creatable::ClassMethods

Definido en:
lib/mongoid/persistable/creable.rb

Colapso del resumen del método de instancia

Detalles del método de instancia

#crear(atributos = nulo, &bloque) ⇒ Documento |Matriz

Crear un nuevo documento. Esto instanciará un nuevo documento y lo insertará en una sola llamada. Siempre devolverá el documento, independientemente de si se ha guardado correctamente o no.

Ejemplos:

Crear un nuevo documento.

Person.create(:title => "Mr")

Crear varios documentos nuevos.

Person.create({ title: "Mr" }, { title: "Mrs" })

Parámetros:

  • atributos (Hash | Matriz) (predeterminado: nulo)

    Los atributos a crear, o una matriz de múltiples atributos para múltiples documentos.

Devuelve:



145
146
147
148
149
150
151
152
153
154
155
# Archivo 'lib/mongoid/persistable/creatable.rb', línea 145

def Cree(atributos = nulo, Ybloque)
  _creando hacer
    Si atributos.is_a?(::Arreglo)
      atributos.map { |attrs| Cree(attrs, Ybloque) }
    else
      doc = Nuevo(atributos, Ybloque)
      doc.guardar
      doc
    end
  end
end

#¡crear!(atributos = nulo, &bloque) ⇒ Documento |Matriz

Crear un nuevo documento. Esto instanciará un nuevo documento y lo insertará en una sola llamada. Siempre devolverá el documento, independientemente de si se ha guardado correctamente o no, y si la validación falla, se generará un error.

Ejemplos:

Crear un nuevo documento.

Person.create!(:title => "Mr")

Crear varios documentos nuevos.

Person.create!({ title: "Mr" }, { title: "Mrs" })

Parámetros:

  • atributos (Hash | Matriz) (predeterminado: nulo)

    Los atributos a crear, o una matriz de múltiples atributos para múltiples documentos.

Devuelve:



172
173
174
175
176
177
178
179
180
181
182
183
# Archivo 'lib/mongoid/persistable/creatable.rb', línea 172

def ¡crear!(atributos = nulo, Ybloque)
  _creando hacer
    Si atributos.is_a?(::Arreglo)
      atributos.map { |attrs| ¡crear!(attrs, Ybloque) }
    else
      doc = Nuevo(atributos, Ybloque)
      doc.¡Fallo debido a la validación! a no ser que doc.insert.errors.¿vacío?
      doc.¡Fallo debido a la devolución de llamada!(:¡crear!) Si doc.¿nuevo_registro?
      doc
    end
  end
end