모듈: Mongoid::Association::Embedded::EmbedsMany::Buildable

다음을 포함합니다.
Threaded::Lifecycle
포함 항목:
Mongoid::Association::Embedded::EmbedsMany
다음에 정의됨:
lib/mongoid/association/embedded/embeds_many/buildable.rb

개요

embeddeds_many 연관 관계를 위한 빌더 클래스입니다.

인스턴스 메서드 요약 접기

인스턴스 메서드 세부 정보

#빌드(base, 객체, type = nil,selected_fields = nil) ⇒ Array<Document ] 문서입니다.

제공된 연결 메타데이터 를 사용하여 속성으로 문서 를 작성합니다. 적합한 경우 하위 클래스와 할당이 사용되는지 확인하기 위해 팩토리를 통해 인스턴스화합니다. 이 경우 많은 문서가 반환됩니다.

예시:

문서를 작성합니다.

Builder.new(meta, attrs).build

매개변수:

  • base (문서)

    기본 객체입니다.

  • 객체 (Array<Document> | Array<Hash>)

    연결을 빌드 하는 데 사용할 객체 입니다.

  • 유형 (string) (기본값: nil)

    이 컨텍스트에서는 사용되지 않습니다.

  • selected_fields (해시) (기본값: nil)

    #only를 통해 조회된 필드입니다. Selected_fields를 지정하면 여기에 나열되지 않은 필드는 빌드된 문서에서 액세스할 수 없습니다.

반환합니다:

  • (Array<Document ] 문서입니다.)

    Array<Document ] 문서입니다.



30
31
32
33
34
35
36
37
38
39
40
41
42
# 파일 'lib/mongoid/association/embedded/embeds_many/buildable.rb', 줄 30

def 빌드(base, 객체, 유형 = nil, selected_fields = nil)
  반환 [] 만약 객체.비어 있나요?
  반환 객체 만약 객체.first.is_a?(문서)
  참고자료 = []
  객체. do |attrs|
    만약 _loading? && base.지속되었나요?
      참고자료.push(공장.execute_from_db(class, attrs, nil, selected_fields, execution_callbacks: 거짓))
    other
      참고자료.push(공장.빌드(class, attrs))
    end
  end
  참고자료
end