Módulo: Mongoid::Persistable::Savable

Incluido en:
Mongoid::Persistable
Definido en:
lib/mongoid/persistable/savable.rb

Overview

Define el comportamiento para las operaciones de persistencia que guardan documentos.

Resumen del método de instancia colapsar

Detalles del método de instancia

#guardar(opciones = {}) ⇒ verdadero | falso

Guardar el documento, se realizará una inserción si el documento es nuevo y una actualización si no lo es.

Ejemplos:

Guarda el documento.

document.save

Parámetros:

  • opciones (encriptada) (por defecto: {})

    Opciones para pasar a la guardado.

Opciones Hash (options):

  • tocar (true | false)

    Si el atributo updated_at se actualizará con la hora actual o no. Cuando esta opción está desactivada, ninguno de los documentos incrustados será modificado. Esta opción se ignora al guardar un nuevo documento, y los campos created_at y updated_at se establecerán en la hora actual.

Devuelve:

  • (true | false)

    Verdadero si tiene éxito, falso si no.



22
23
24
25
26
27
28
# Archivo 'lib/mongoid/persistable/savable.rb', línea 22

def guardar(opciones = {})
  si nuevo_registro?
    !insert(opciones).nuevo_registro?
  else
    update_document(opciones)
  end
end

#¡guardar!(opciones = {}) ⇒ true | false

Guardar el documento: se realizará una inserción si el documento es nuevo y una actualización si no lo es. Si se produce un error de validación, se generará un error.

Ejemplos:

Guarda el documento.

document.save!

Parámetros:

  • opciones (encriptada) (por defecto: {})

    Opciones para pasar a la guardado.

Opciones Hash (options):

  • tocar (true | false)

    Ya sea que el atributo updated_at se actualice o no con el tiempo actual. Cuando esta opción es falsa, ninguno de los documentos incrustados se verá afectado. Esta opción se ignora al guardar un documento nuevo, y created_at y updated_at se configurarán a la hora actual.

Devuelve:

  • (true | false)

    Verdadero si la validación pasó.

Aumenta:



48
49
50
51
52
53
54
# Archivo 'lib/mongoid/persistable/savable.rb', línea 48

def save!(opciones = {})
  a menos que guardar(opciones)
    falló_por_validación! a menos que errors.¿vacío?
    ¡fallar_debido_a_callback!(:save!)
  end
  true
end