모듈: Mongoid::Copyable

확장자:
ActiveSupport::Concern
포함 항목:
컴포저블
다음에 정의됨:
lib/mongoid/copyable.rb

개요

이 모듈에는 Mongoid의 문서 복제/복제 동작이 포함되어 있습니다.

인스턴스 메서드 요약 접기

인스턴스 메서드 세부 정보

#clone문서 ~라고도 함: dup

현재 Document 을(를) 복제하거나 복제합니다. 이렇게 하면 문서의 ID를 제외한 모든 속성이 반환되고 모든 인스턴스 변수가 재설정됩니다.

이 복제본에는 내장된 문서도 포함되어 있습니다. 내장된 문서 에 _id 필드 가 있는 경우 루트의 _id 와 달리 유지됩니다.

포함된 자식을 복제하는 경우 포함된 부모는 복제되지 않고 embedded_in 연관 관계가 설정하다 되지 않습니다.

예시:

문서를 복제합니다.

document.clone

반환합니다:

  • (문서)

    새 문서입니다.



24
25
26
27
28
29
30
31
# 파일 'lib/mongoid/copyable.rb', 24줄

def 복제
  # @note 이 다음 줄은 #2704 을(를) 주소 하기 위한 것입니다.
  # 문서 의 _id 및 ID 필드 로 인해 Mongoid에 문제가 발생합니다.
  # 다른 곳에서. 이 작업은 원하는 대로 루트 문서에서만 수행됩니다.
  # 내장된 문서에서 동일한 _id 를 유지합니다.
  attrs = clone_document.~을 제외하고(*self.클래스.id_fields)
  복사 가능.clone_with_hash(self.클래스, attrs)
end