클래스: Mongoid::Association::Referenced::BelongsTo::Proxy

상속:
one
  • 객체
모두 표시
다음을 포함합니다.
진화형
다음에 정의됨:
lib/mongoid/association/referenced/belongs_to/proxy.rb

개요

소속_대상 연결을 위한 투명한 프록시입니다. 이 클래스의 인스턴스 는 주제 문서 에서 연관 게터 메서드를 호출할 때 반환됩니다. 이 클래스는 Mongoid::Association::Proxy를 상속하고 해당 메서드의 대부분을 연관 관계의 대상, 즉 로드해야 하는 반대편 컬렉션 의 문서 에 전달합니다.

상수 요약

프록시에서 상속된 상수

Proxy::KEEPER_METHODS

인스턴스 속성 요약

프록시에서 상속된 속성

#_association, #_base, #_target

클래스 메서드 요약 접기

인스턴스 메서드 요약 접기

E볼버블에 포함된 메서드

#__evolve_object_id__

One에서 상속된 메서드

#__evolve_object_id__, #clear, #in_memory, #respond_to?

프록시에서 상속된 메서드

apply_ordering, #extend_proxys, #klass, #reset_unloaded, #substutable

마셜러블에 포함된 메서드

#marshal_dump, #marshal_load

생성자 세부 정보

#initialize(base, target,association) ⇒ Proxy

새 requires_to 연관 프록시를 인스턴스화합니다.

예시:

새 프록시를 만듭니다.

Association::BelongsTo::Proxy.new(game, person, association)

매개변수:



26
27
28
29
30
31
# 파일 'lib/mongoid/association/referenced/belongs_to/proxy.rb', 줄 26

def 초기화(base, 대상, 연관 관계)
  super do
    Characterize_one(_target)
    bind_one
  end
end

클래스 메서드 세부 정보

.Eager_loader(association, Docs) ⇒ Mongoid::Association::Referenced::BelongsTo::Eager

이 연결 유형에 대한 Eager 객체 를 가져옵니다.

예시:

긴급 로더 객체 가져오기

매개변수:

반환합니다:



110
111
112
# 파일 'lib/mongoid/association/referenced/belongs_to/proxy.rb', 줄 110

def Eager_loader(연관 관계, 참고자료)
  열망.신규(연관 관계, 참고자료)
end

.임베디드?false

연관 관계가 포함된 연관 관계라면 true를 반환합니다. 이 경우 항상 false입니다.

예시:

이 연결이 포함되어 있나요?

Association::BelongsTo::Proxy.embedded?

반환합니다:

  • (false)

    항상 거짓입니다.



121
122
123
# 파일 'lib/mongoid/association/referenced/belongs_to/proxy.rb', 줄 121

def 임베디드?
  거짓
end

인스턴스 메서드 세부 정보

#nullify객체

외래 키와 참조를 삭제하고 프로세스 에서 대상 문서 를 분리하여 기본 문서 와 대상 문서 간의 연결을 제거합니다.

예시:

연관 관계를 무효화합니다.

person.game.nullify


39
40
41
42
# 파일 'lib/mongoid/association/referenced/belongs_to/proxy.rb', 줄 39

def nullify
  unbind_one
  _target.저장
end

#대체(교체) ⇒ 자체 | nil

연관 관계의 기존 문서 를 제공된 대상 문서로 대체합니다.

예시:

연관 관계를 대체합니다.

name.substitute(new_name)

매개변수:

반환합니다:

  • (self | nil)

    연관 관계 또는 nil입니다.



53
54
55
56
57
58
59
60
# 파일 'lib/mongoid/association/referenced/belongs_to/proxy.rb', 줄 53

def 대체(교체)
  unbind_one
  반환 하지 않는 한 교체

  self._target = 정규화(교체)
  bind_one
  self
end