모듈: Mongoid::Association::Referenced::WithPolymorphicCriteria Private

포함 항목:
HasMany, HasOne::Buildable
다음에 정의됨:
lib/mongoid/association/referenced/with_polymorphic_criteria.rb

개요

이 모듈은 비공개 API의 일부입니다. 이 모듈은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.

'with_polymorphic_criteria' 공유 동작을 구현합니다.

인스턴스 메서드 요약 접기

인스턴스 메서드 세부 정보

#with_polymorphic_criterion(criteria, base) ⇒ Mongoid::Criteria

이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.

수신자가 다형성 연관을 나타내는 경우 지정된 'criteria' 객체 에 다형성 검색 기준을 적용합니다.

매개변수:

  • 기준 (Mongoid::Criteria)

    수신자가 다형성인 경우 추가할 기준입니다.

  • base (Mongoid::Document)

    다형성 유형 키를 확인할 때 사용할 문서 .

반환합니다:

[소스 보기]

20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
# 파일 'lib/mongoid/association/referenced/with_polymorphic_criteria.rb', 줄 20

def with_polymorphic_criterion(기준, base)
  만약 다형성?
    # 1. 역방향 연관 관계에 대한 리졸버 가져오기
    리졸버 = class.mirror_on_association(방식).리졸버

    # 2. 기본적으로 리졸버에서 키 목록을 조회합니다.
     = 리졸버.key_for(base)

    # 3. 키가 하나만 있으면 동등성을 사용하고, 키가 여러 개인 경우 'in'을 사용합니다.
    만약 .많은?
      기준.위치(유형 => { :$in =>  })
    other
      기준.위치(유형 => .first)
    end
  other
    기준
  end
end