클래스: Mongoid::Association::Embedded::EmbedsMany

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

개요

EmbedsMany 유형 연관 관계입니다.

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

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

상수 요약 접기

ASSOCIATION_OPTIONS =

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

반환합니다:

  • (Array<Symbol>)

    예비 유효한 옵션입니다.

[
    :as,
    :cascade_callbacks,
    :Cyclic,
    :order,
    :store_as,
    :before_add,
    :after_add,
    :before_remove,
    :after_remove
]
VALID_OPTIONS =

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

반환합니다:

  • (Array<Symbol>)

    유효한 옵션입니다.

(ASSOCIATION_OPTIONS + SHARED_OPTIONS).동결

Relatable에서 포함된 상수

Relatable::PRIMARY_KEY_DEFAULT, Relatable::SHARED_OPTIONS

인스턴스 속성 요약

Relatable에 포함된 속성

#name, #options, #parent_inclusions

인스턴스 메서드 요약 접기

Buildable에 포함된 메서드

#build

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, #inverse_type_setter, #inverses, #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, #터치_필드, #터치 가능?

Constrainable에 포함된 메서드

#convert_to_foreign_key

인스턴스 메서드 세부 정보

#기준(기본, 대상) ⇒ 객체

지정된 상위 및 하위 문서를 검색하기 위한 기준 객체를 가져옵니다.

매개변수:

  • base (문서)

    기본 문서입니다.

  • 대상 (문서)

    하위 문서.



137
138
139
140
141
142
143
144
# 파일 'lib/mongoid/association/embedded/embeds_many.rb', 줄 137

def 기준(base, 대상)
  criterion = class.범위 지정
  criterion.임베디드 = true
  criterion.문서 = 대상
  criterion.parent_document = base
  criterion.연관 관계 = self
  apply_ordering(criterion)
end

#embedded?true

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

반환합니다:

  • (true)

    항상 사실입니다.



66
# 파일 'lib/mongoid/association/embedded/embeds_many.rb', 줄 66

def 임베디드?; true; end

#string

연결된 객체의 속성을 가져오는 데 사용되는 키입니다.

반환합니다:

  • (string)

    연관 관계를 저장하는 데 사용되는 필드의 이름입니다.



59
60
61
# 파일 'lib/mongoid/association/embedded/embeds_many.rb', 줄 59

def 
  store_as.to_s
end

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

중첩된 빌더 객체 입니다.

매개변수:

  • 속성 (해시)

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

  • 옵션 (해시)

    연결에 대한 옵션입니다.

반환합니다:



116
117
118
# 파일 'lib/mongoid/association/embedded/embeds_many.rb', 줄 116

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

#경로(문서) ⇒ Mongoid::Atomic::Paths::Embedded::Many

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

예시:

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

Proxy.path(document)

매개변수:

  • 문서 (문서)

    계산할 문서입니다.

반환합니다:



129
130
131
# 파일 'lib/mongoid/association/embedded/embeds_many.rb', 줄 129

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

#다형성?true | false

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

반환합니다:

  • (true | false)

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



97
98
99
# 파일 'lib/mongoid/association/embedded/embeds_many.rb', 줄 97

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

#primary_keynil

기본 키

반환합니다:

  • (nil)

    이 연결과 관련이 없습니다.



85
# 파일 'lib/mongoid/association/embedded/embeds_many.rb', 줄 85

def Primary_key; end

#관계연관 관계::Embedded::EmbedsMany::Proxy

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

반환합니다:



90
91
92
# 파일 'lib/mongoid/association/embedded/embeds_many.rb', 줄 90

def 관계
  프록시
end

#설정!자기

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

반환합니다:

  • (self)


42
43
44
45
46
47
# 파일 'lib/mongoid/association/embedded/embeds_many.rb', 줄 42

def 설정!
  setup_instance_methods!
  @holder_class.embedded_relations = @holder_class.embedded_relations.merge(이름 => self)
  @holder_class.aliased_fields[이름.to_s] = store_as 만약 store_as
  self
end

#store_asString

연결 객체 목록을 저장 하는 데 사용되는 필드 키입니다.

반환합니다:

  • (string)

    필드 이름입니다.



52
53
54
# 파일 'lib/mongoid/association/embedded/embeds_many.rb', 줄 52

def store_as
  @store_as ||= (@options[:store_as].try(:to_s) || 이름.to_s)
end

#stores_foreign_key?false

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

반환합니다:

  • (false)

    항상 거짓입니다.



80
# 파일 'lib/mongoid/association/embedded/embeds_many.rb', 줄 80

def Stores_foreign_key?; 거짓; end

#유형string | nil

참고:

연관 관계가 다형성인 경우에만 관련이 있습니다.

관련 객체 의 유형을 저장 하는 데 사용되는 필드 입니다.

반환합니다:

  • (string | nil)

    연결된 객체의 유형을 저장하기 위한 필드입니다.



106
107
108
# 파일 'lib/mongoid/association/embedded/embeds_many.rb', 줄 106

def 유형
  @type ||= "#{as}_type" 만약 다형성?
end

#validation_defaulttrue

연결에 대한 기본 유효성 검사 설정을 가져옵니다. 기본적으로 연결된 유효성 검사를 수행할지 여부를 결정합니다.

예시:

유효성 검사 기본값 을 가져옵니다.

Proxy.validation_default

반환합니다:

  • (true)

    항상 사실입니다.



75
# 파일 'lib/mongoid/association/embedded/embeds_many.rb', 줄 75

def validation_default; true; end