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

상속:
객체
  • 객체
모두 표시
다음을 포함합니다.
Buildable, Mongoid::Association::Relatable
다음에 정의됨:
lib/mongoid/association/referenced/belongs_to.rb,
lib/mongoid/association/referenced/belongs_to/eager.rb,
lib/mongoid/association/referenced/belongs_to/proxy.rb,
lib/mongoid/association/referenced/belongs_to/Binding.rb,
lib/mongoid/association/referenced/belongs_to/buildable.rb
more...

개요

BelongsTo 유형 연결입니다.

네임스페이스 아래에 정의됨

모듈: Buildable 클래스: 바인딩, Eager, 프록시

상수 요약 접기

ASSOCIATION_OPTIONS =

일반적인 옵션 외에 이 유형의 연결에 사용할 수 있는 옵션이 있습니다.

반환합니다:

  • (Array<Symbol>)

    예비 유효한 옵션입니다.

[
    :autobuild,
    :autosave,
    :counter_cache,
    :Dependent,
    :foreign_key,
    :index,
    :polymorphic,
    :primary_key,
    :터치,
    :optional,
    :필수,
    :scope,
].동결
VALID_OPTIONS =

공유 옵션을 포함하여 이 연결에 유효한 옵션의 전체 목록입니다.

반환합니다:

  • (Array<Symbol>)

    유효한 옵션입니다.

(ASSOCIATION_OPTIONS + SHARED_OPTIONS).동결
FOREIGN_KEY_FIELD_TYPE =

외래 키가 들어 있는 필드 의 유형입니다.

반환합니다:

  • (객체)
객체
FORIGN_KEY_SUFFIX =

기본값 외래 키 접미사입니다.

반환합니다:

  • (string)

    '_id'

'_id'.동결

Mongoid::Association::Relatable에서 포함된 상수

Mongoid::Association::Relatable::PRIMARY_KEY_DEFAULT, Mongoid::Association::Relatable::SHARED_OPTIONS

인스턴스 속성 요약

Mongoid::Association::Relatable에포함된 속성

#name, #options, #parent_inclusions

인스턴스 메서드 요약 접기

Buildable에 포함된 메서드

#build

Mongoid::Association::Relatable에포함된 메서드

#==, #bindable?, #counter_cache_column_name, #create_relation, #destructive?, #extension, #foreign_key_check, #foreign_key_setter, #get_callbacks, #in_to?, #initialize, #inverse, #inverse_association, #inverse_class, #inverse_class_name, #inverse_setter, #inverse_type_setter, #inverses, #key, #many?, #one?, #relation_class, #relation_class_name, #setter, #type_setter, #validate?

옵션에 포함된 메서드

#as, #autobuild?, #autosave, #cascading_callbacks?, #counter_cached?, #Cyclic?, #Dependent, #forced_nil_inverse?, #indexed?, #inverse_of, #order, #primary_key, #store_as, #터치 필드, #터치 가능?, #type

Constrainable에 포함된 메서드

#convert_to_foreign_key

인스턴스 메서드 세부 정보

#embedded?false

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

반환합니다:

  • (false)

    항상 거짓입니다.

[소스 보기]

77
# 파일 'lib/mongoid/association/referenced/belongs_to.rb', 줄 77

def 임베디드?; 거짓; end

#foreign_keystring

연결 참조를 저장하기 위한 외래 키 필드 를 가져옵니다.

반환합니다:

  • (string)

    연결 참조를 저장하기 위한 외래 키 필드 입니다.

[소스 보기]

87
88
89
90
# 파일 'lib/mongoid/association/referenced/belongs_to.rb', 줄 87

def foreign_key
  @foreign_key ||= @options[:foreign_key] ? @options[:foreign_key].to_s :
                     default_foreign_key_field
end

#inverse_typeString

다형성 연관 유형을 저장 하는 데 사용되는 필드 의 이름입니다.

반환합니다:

  • (string)

    다형성 연관 유형을 저장하는 데 사용되는 필드입니다.

[소스 보기]

124
125
126
# 파일 'lib/mongoid/association/referenced/belongs_to.rb', 줄 124

def inverse_type
  (@inverse_type ||= "#{name}_type") 만약 다형성?
end

# 중첩된_빌더(속성, 옵션) ⇒ 연관 관계::중첩::원

중첩된 빌더 객체 입니다.

매개변수:

  • 속성 (해시)

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

  • 옵션 (해시)

    연결에 대한 옵션입니다.

반환합니다:

[소스 보기]

134
135
136
# 파일 'lib/mongoid/association/referenced/belongs_to.rb', 줄 134

def 중첩된_빌더(속성, 옵션)
  중첩::one.신규(self, 속성, 옵션)
end

#경로(문서) ⇒ 루트

제공된 문서 의 경로 계산기를 가져옵니다.

예시:

경로 계산기를 가져옵니다.

association.path(document)

매개변수:

  • 문서 (문서)

    계산할 문서입니다.

반환합니다:

  • (Root)

    루트 원자 경로 계산기.

[소스 보기]

146
147
148
# 파일 'lib/mongoid/association/referenced/belongs_to.rb', 줄 146

def 경로(문서)
  몽고이드::원자::경로::루트.신규(문서)
end

#다형성?true | false

이 연관 관계는 다형성입니까?

반환합니다:

  • (true | false)

    이 연관 관계가 다형성인지 여부입니다.

[소스 보기]

102
103
104
# 파일 'lib/mongoid/association/referenced/belongs_to.rb', 줄 102

def 다형성?
  @polymorphic ||= !!@options[:polymorphic]
end

#관계연관 관계::BelongsTo::Proxy

이 연결 유형에 대한 연결 프록시 클래스를 가져옵니다.

반환합니다:

  • (연관 관계::BelongsTo::Proxy)

    프록시 클래스입니다.

[소스 보기]

95
96
97
# 파일 'lib/mongoid/association/referenced/belongs_to.rb', 줄 95

def 관계
  프록시
end

#관계 _complements ⇒ Array<Mongoid::Association::Relatable>

연관 관계 보완 목록입니다.

반환합니다:

[소스 보기]

56
57
58
# 파일 'lib/mongoid/association/referenced/belongs_to.rb', 줄 56

def 관계_보완
  @relation_complements ||= [ Has Many, Has One ].동결
end

# 리졸버⇒ nil | Mongoid::ModelResolver

다형성 유형 참조를 클래스 객체로 변환하거나 그 반대로 변환하는 작업을 담당하는 객체 반환합니다. 이는 연관 관계가 정의될 때 제공된 ':polymorphic' 옵션을 통해 얻어집니다.

여기에서 ':polymorphic' 옵션이 해석되는 방식은 Mongoid::ModelResolver.resolver를 참조하세요.

반환합니다:

다음을 발생시킵니다.

  • 지정된 식별자로 등록된 리졸버가 없는 경우 KeyError를 반환합니다.

[소스 보기]

117
118
119
# 파일 'lib/mongoid/association/referenced/belongs_to.rb', 줄 117

def 리졸버
  @resolver ||= 몽고이드::ModelResolver.리졸버(@options[:polymorphic])
end

#scopeProc | Symbol | nil

연관 관계를 쿼리할 때 적용될 범위를 가져옵니다.

반환합니다:

  • (Proc | Symbol | nil)

    연관 관계 범위(있는 경우).

[소스 보기]

153
154
155
# 파일 'lib/mongoid/association/referenced/belongs_to.rb', 줄 153

def 범위
  @options[:scope]
end

#설정!자기

연결을 소유한 클래스에서 인스턴스 메서드, 필드 등을 설정합니다.

반환합니다:

  • (self)
[소스 보기]

63
64
65
66
67
# 파일 'lib/mongoid/association/referenced/belongs_to.rb', 줄 63

def 설정!
  setup_instance_methods!
  @holder_class.aliased_fields[이름.to_s] = foreign_key
  self
end

#stores_foreign_key?true

이 연결 유형이 외래 키를 저장 하나요?

반환합니다:

  • (true)

    항상 사실입니다.

[소스 보기]

72
# 파일 'lib/mongoid/association/referenced/belongs_to.rb', 줄 72

def Stores_foreign_key?; true; end

#validation_defaultfalse

연결 객체 유효성 검사 의 기본값 입니다.

반환합니다:

  • (false)

    항상 거짓입니다.

[소스 보기]

82
# 파일 'lib/mongoid/association/referenced/belongs_to.rb', 줄 82

def validation_default; 거짓; end