Módulo: Mongoid::Copiable

Ampliado por:
ActiveSupport::Concern
Incluido en:
Compuesto
Definido en:
lib/mongoid/copyable.rb

Overview

Este módulo contiene el comportamiento del clon/duplicado de documentos de Mongoid.

Resumen del método de instancia colapsar

Detalles del método de instancia

#cloneDocumento También conocido como: duplicar

Duplica o clona el/la Document actual. Esto devolverá todos los atributos con excepción del id del documento, y restablecerá todas las variables de instancia.

Este clon también incluye documentos incrustados. Si hay un campo _id en el documento incrustado, este se mantiene, a diferencia del _id raíz.

Si se clona un hijo embebido, el padre embebido no se clona y la asociación embedded_in no se configura.

Ejemplos:

Clonar el documento.

document.clone

Devuelve:



24
25
26
27
28
29
30
31
# Archivo 'lib/mongoid/copyable.rb', línea 24

def clon
  # @note La siguiente línea está aquí para abordar #2704, aunque tenga un
  # Los campos _id e id en el documento causarían problemas con Mongoid
  # en otro lugar. Tenga en cuenta que esto solo se realiza en el documento raíz, como queremos
  # para mantener el mismo _id en los documentos incrustados.
  attrs = clonar_documento.excepto(*sí mismo.clase.id_fields)
  Copiable.clone_with_hash(sí mismo.clase, attrs)
end