모듈: Mongoid::Document::ClassMethods

다음에 정의됨:
lib/mongoid/ 문서.rb

개요

문서 객체에 대한 클래스 수준 메서드입니다.

인스턴스 메서드 요약 접기

인스턴스 메서드 세부 정보

#_mongoid_clear_types객체

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

@_type 캐시 를 지웁니다. 이는 일반적으로 클래스의 판별자 키/값을 변경할 때 호출됩니다.

예시:

유형을 가져옵니다.

document._mongoid_clear_types


488
489
490
491
# 파일 'lib/mongoid/ 문서.rb', 488줄

def _mongoid_clear_types
  @_types = nil
  슈퍼클래스._mongoid_clear_types 만약 유전?
end

#_typesArray<Class>

이 클래스를 기본으로 사용할 때 쿼리 할 모든 유형을 반환합니다.

예시:

유형을 가져옵니다.

document._types

반환합니다:

  • (Array<Class>)

    현재 문서의 모든 하위 클래스입니다.



477
478
479
# 파일 'lib/mongoid/ 문서.rb', 477줄

def _types
  @_types ||= (descendants + [ self ]).uniq.map(&:discrirator_value)
end

#configure_document(attrs = nil, options = {}) ⇒ 문서

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

참고:

Ruby 2.x 버그로 인해 옵션 해시가 키워드 인수가 되지 않습니다. Ruby 2.x에 대한 지원 이 중단되면 옵션 해시를 키워드 인수로 다시 구현할 수 있습니다. bugs.ruby-lang.org/issues/15753를 참조하세요.

문서를 할당하고 구성합니다.

매개변수:

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

    문서 를 설정하다 때 사용할 속성입니다.

  • 옵션 (해시) (기본값: {})

    사용할 옵션입니다.

옵션 해시(options):

  • :execute_callbacks (true | false)

    플래그는 콜백을 실행 할지 여부를 지정합니다.

반환합니다:

  • (문서)

    새 문서입니다.



466
467
468
469
# 파일 'lib/mongoid/ 문서.rb', 466줄

def configure_document(attrs = nil, 옵션 = {})
  execution_callbacks = 옵션.가져오기(:execute_callbacks, 스레드.실행 콜백?)
  with_callbacks(execution_callbacks) { 신규(attrs) }
end

#i18n_scope기호

ActiveModel을 덮어쓰도록 i18n 범위를 설정합니다.

반환합니다:

  • (기호)

    :mongoid



496
497
498
# 파일 'lib/mongoid/ 문서.rb', 496줄

def i18n_scope
  :mongoid
end

#인스턴스화(attrs = nil,selected_fields = nil, &block) ⇒ 문서

데이터베이스 에서 로드되거나 속성이 이미 유형 변환된 경우에만 새 객체 를 인스턴스화합니다.

예시:

문서 를 만듭니다.

Person.instantiate(:title => 'Sir', :age => 30)

매개변수:

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

    인스턴스화할 속성의 해시입니다.

  • selected_fields (정수) (기본값: nil)

    기준에서 선택한 필드입니다.

반환합니다:

  • (문서)

    새 문서입니다.



411
412
413
# 파일 'lib/mongoid/ 문서.rb', 411줄

def 인스턴스화(attrs = nil, selected_fields = nil, &차단)
  인스턴스화_문서(attrs, selected_fields, &차단)
end

#stantiate_document(attrs = nil,selected_fields = nil, options = {}) {|Mongoid::Document| ... } ⇒ 문서

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

참고:

Ruby 2.x 버그로 인해 옵션 해시가 키워드 인수가 되지 않습니다. Ruby 2.x에 대한 지원 이 중단되면 옵션 해시를 키워드 인수로 다시 구현할 수 있습니다.

문서 를 인스턴스화합니다.

매개변수:

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

    인스턴스화할 속성의 해시입니다.

  • selected_fields (정수) (기본값: nil)

    기준에서 선택한 필드입니다.

  • 옵션 (해시) (기본값: {})

    사용할 옵션입니다.

옵션 해시(options):

  • :execute_callbacks (true | false)

    플래그는 콜백을 실행 할지 여부를 지정합니다.

수율:

  • (Mongoid::Document)

    차단 이 지정되면 새로 인스턴스화 문서 를 블록에 양보합니다.

반환합니다:

  • (문서)

    새 문서입니다.



435
436
437
438
439
440
441
442
443
444
445
446
447
448
# 파일 'lib/mongoid/ 문서.rb', 435줄

def 인스턴스화_문서(attrs = nil, selected_fields = nil, 옵션 = {}, &차단)
  execution_callbacks = 옵션.가져오기(:execute_callbacks, 스레드.실행 콜백?)
  속성 = attrs&.to_h || {}

  doc = 할당하다
  doc.__selected_fields = selected_fields
  doc.instance_variable_set(:@attributes, 속성)
  doc.instance_variable_set(:@attributes_before_type_cast, 속성.dup)

  doc._handle_callbacks_after_instantiation(execution_callbacks, &차단)

  doc.Memory_storage_options!
  doc
end

#로거로거

로거를 반환합니다.

예시:

로거를 가져옵니다.

Person.logger

반환합니다:

  • (로거)

    구성된 로거 또는 기본값 로거 인스턴스 입니다.



506
507
508
# 파일 'lib/mongoid/ 문서.rb', 506줄

def 로거
  몽고이드.로거
end

#with_callbacks(execute_callbacks) ⇒ 객체

콜백을 기본값 으로 호출할지 여부를 차단 내에서 지정합니다. 콜백은 사용 가능한 경우 항상 'execute_callbacks: true'를 전달하여 명시적으로 호출할 수 있습니다.

매개변수:

  • execution_callbacks (true | false)

    콜백을 억제할지 여부입니다.



392
393
394
395
396
397
398
# 파일 'lib/mongoid/ 문서.rb', 392줄

def with_callbacks(execution_callbacks)
  저장됨, 스레드.execution_callbacks =
    스레드.실행 콜백?, execution_callbacks
  yield
보장
  스레드.execution_callbacks = 저장됨
end