모듈: Mongoid::Threaded

확장자:
스레드
포함 항목:
스레드
다음에 정의됨:
lib/mongoid/threaded.rb,
lib/mongoid/threaded/Lifecycle.rb

개요

이 모듈에는 현재 스레드에 라이프사이클이 있는 객체에 쉽게 액세스할 수 있는 로직이 포함되어 있습니다.

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

모듈: 라이프사이클

상수 요약 접기

STORAGE_KEY =

공유 스레드 및 파이버 로컬 저장 의 키입니다. 파이버 로컬 저장 의 키는 기호여야 하므로 기호여야 합니다.

:'[mongoid]'
STORAGE_OWNER_KEY =

저장 해시를 소유한 파이버를 추적하여 파이버가 상위 파이버로부터 저장 를 생성하지 않고 상속한 경우를 감지합니다.

:'[mongoid]:소유자'
DATABASE_OVERRIDE_KEY =
'db-override'
CLIENT_OVERRIDE_KEY =

클라이언트를 재정의하는 키입니다.

'클라이언트 재정의'
CURRENT_SCOPE_KEY =

현재 스레드의 범위 스택 에 대한 키입니다.

'current-scope'
AUTOSAVES_KEY =
'자동 저장'
VALIDATIONS_KEY =
'유효성 검사'
TOUCH_MERGED_KEY =
'터치 병합'
STACK_KEYS =
해시.신규 do |해시, |
  해시[] = "#{key}- 스택"
end
SESSIONS_KEY =

현재 스레드의 세션에 대한 키입니다.

'세션'
수정_DOCUMENTS_KEY =

트랜잭션 내부에서 수정된 문서를 저장하기 위한 키입니다.

'수정된 문서'
EXECUTE_CALLBACKS =

문서에서 콜백을 실행할지 여부에 대한 기본값 을 저장하는 키입니다.

'실행 콜백'
BIND =
'bind'
ASSIGN =
'할당하다'
BUILD =
'빌드'
LOAD =
'로드'
CREATE =
'create'

인스턴스 메서드 요약 접기

인스턴스 메서드 세부 정보

#add_modified_document(session, document) ⇒ Object

세션과 연결된 트랜잭션 내에서 수정된 문서 에 대한 참조를 저장합니다.

매개변수:

  • Session (Mongo::Session)

    문서 가 수정된 범위의 세션입니다.

  • 문서 (Mongoid::Document)

    Mongoid 문서 가 수정되었습니다.



504
505
506
507
508
# 파일 'lib/mongoid/threaded.rb', 504줄

def add_modified_document(Session, 문서)
  반환 하지 않는 한 Session&.in_transaction?

  Modifyed_documents[Session] << 문서
end

#자동 저장?(문서) ⇒ true | false

문서 가 현재 스레드에 자동 저장되나요?

예시:

문서가 자동으로 저장되나요?

Threaded.autosaved?(doc)

매개변수:

  • 문서 (문서)

    확인할 문서 입니다.

반환합니다:

  • (true | false)

    문서 가 자동 저장된 경우.



368
369
370
# 파일 'lib/mongoid/threaded.rb', 368줄

def 자동 저장?(문서)
  autosave_for(문서.클래스).포함?(문서._id)
end

#autosave해시

현재 스레드에서 모든 자동 저장을 가져옵니다.

예시:

모든 자동 저장을 가져옵니다.

Threaded.autosaves

반환합니다:

  • (해시)

    현재 자동 저장입니다.



403
404
405
# 파일 'lib/mongoid/threaded.rb', 403줄

def 자동 저장
  get(AUTOSAVES_KEY) { {} }
end

#autosaves_for(klass) ⇒ Array

클래스의 현재 스레드에서 모든 자동 저장을 가져옵니다.

예시:

모든 자동 저장을 가져옵니다.

Threaded.autosaves_for(Person)

매개변수:

  • class (클래스)

    확인할 클래스입니다.

반환합니다:

  • (배열)

    현재 자동 저장입니다.



425
426
427
# 파일 'lib/mongoid/threaded.rb', 425줄

def autosave_for(class)
  자동 저장[class] ||= []
end

#begin_autosave(document) ⇒ Object

현재 스레드에서 문서 자동 저장을 시작합니다.

예시:

Begin autosave.

Threaded.begin_autosave(doc)

매개변수:

  • 문서 (문서)

    자동 저장할 문서입니다.



198
199
200
# 파일 'lib/mongoid/threaded.rb', 198줄

def begin_autosave(문서)
  autosave_for(문서.클래스).push(문서._id)
end

#begin_execution(name) ⇒ true

명명된 스레드 로컬 스택에 진입하기 시작합니다.

예시:

스택 에 진입하기 시작합니다.

Threaded.begin_execution(:create)

매개변수:

  • 이름 (string)

    스택 의 이름

반환합니다:

  • (true)

    참.



130
131
132
# 파일 'lib/mongoid/threaded.rb', 130줄

def begin_execution(이름)
  스택(이름).push(true)
end

#시작_터치_병합(문서) ⇒ 객체

문서의 터치 업데이트가 현재 스레드의 원자적 삽입으로 병합되었음을 표시합니다.

예시:

터치 병합을 시작합니다.

Threaded.begin_touch_merged(doc)

매개변수:

  • 문서 (문서)

    삽입되는 내장된 문서 입니다.



219
220
221
# 파일 'lib/mongoid/threaded.rb', 219줄

def 시작_터치_병합(문서)
  Touch_merged_for(문서.클래스).push(문서._id)
end

#begin_validate(문서) ⇒ 객체

현재 스레드에서 문서의 유효성 검사를 시작합니다.

예시:

Begin validation.

Threaded.begin_validate(doc)

매개변수:

  • 문서 (문서)

    유효성을 검사할 문서입니다.



208
209
210
# 파일 'lib/mongoid/threaded.rb', 208줄

def start_validate(문서)
  validations_for(문서.클래스).push(문서._id)
end

#begin_without_default_scope(klass) ⇒ 객체

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

현재 스레드에서 지정된 모델에 대한 기본값 범위를 억제하기 시작합니다.

예시:

기본값 범위 스택 없이 시작합니다.

Threaded.begin_without_default_scope(klass)

매개변수:

  • class (클래스)

    기본값 범위 지정을 억제할 모델입니다.



261
262
263
# 파일 'lib/mongoid/threaded.rb', 261줄

def begin_without_default_scope(class)
  스택(:without_default_scope).push(class)
end

#clear_modified_documents(session) ⇒ Set<Mongoid::Document>

지정된 세션에 대해 수정된 문서 설정하다 를 지우고 정리 전 설정하다 의 내용을 반환합니다.

매개변수:

  • Session (Mongo::Session)

    수정된 문서 설정하다 를 지워야 하는 세션입니다.

반환합니다:

  • (Set<Mongoid::Document>)

    삭제되기 전에 수정된 문서의 컬렉션입니다.



517
518
519
# 파일 'lib/mongoid/threaded.rb', 517줄

def clear_modified_documents(Session)
  Modifyed_documents.삭제(Session) || []
end

#clear_session(client: nil) ⇒ nil

참고:

이전 버전과의 호환성을 위해 다음 없이 이 메서드를 호출할 수 있습니다.

클라이언트 의 이 스레드에 대해 캐시된 세션을 지웁니다.

client 매개 변수를 지정합니다.

매개변수:

  • 고객 (Mongo::Client | nil) (기본값: nil)

    세션을 지울 클라이언트 입니다.

반환합니다:

  • (nil)


494
495
496
# 파일 'lib/mongoid/threaded.rb', 494줄

def clear_session(클라이언트: nil)
  세션.삭제(고객)&.end_session
end

#client_overridestring | 기호

글로벌 클라이언트 재정의를 가져옵니다.

예시:

글로벌 클라이언트 재정의를 가져옵니다.

Threaded.client_override

반환합니다:

  • (string | 기호)

    재정의.



283
284
285
# 파일 'lib/mongoid/threaded.rb', 283줄

def client_override
  get(CLIENT_OVERRIDE_KEY)
end

#client_override=(name) ⇒ string | 기호

글로벌 클라이언트 재정의를 설정합니다.

예시:

글로벌 클라이언트 재정의를 설정합니다.

Threaded.client_override = :testing

매개변수:

  • 이름 (string | 기호)

    전역 재정의 이름입니다.

반환합니다:

  • (string | 기호)

    재정의.



295
296
297
# 파일 'lib/mongoid/threaded.rb', 295줄

def client_override=(이름)
  세트(CLIENT_OVERRIDE_KEY, 이름)
end

#current_scope(klass = nil) ⇒ 기준

현재 Mongoid 범위를 가져옵니다.

예시:

범위를 가져옵니다.

Threaded.current_scope(klass)
Threaded.current_scope

매개변수:

  • class (Klass) (기본값: nil)

    범위의 클래스 유형입니다.

반환합니다:



308
309
310
311
312
313
314
315
316
# 파일 'lib/mongoid/threaded.rb', 308줄

def current_scope(class = nil)
  current_scope = get(CURRENT_SCOPE_KEY)

  만약 class && current_scope.response_to?(:keys)
    current_scope[current_scope..찾기 { |k| k <= class }]
  other
    current_scope
  end
end

#current_scope=(scope) ⇒ 기준

현재 Mongoid 범위를 설정합니다.

예시:

범위를 설정합니다.

Threaded.current_scope = scope

매개변수:

  • 범위 (기준)

    현재 범위입니다.

반환합니다:



326
327
328
# 파일 'lib/mongoid/threaded.rb', 326줄

def current_scope=(범위)
  세트(CURRENT_SCOPE_KEY, 범위)
end

#database_overridestring | 기호

글로벌 데이터베이스 재정의를 가져옵니다.

예시:

글로벌 데이터베이스 재정의를 가져옵니다.

Threaded.database_override

반환합니다:

  • (string | 기호)

    재정의.



140
141
142
# 파일 'lib/mongoid/threaded.rb', 140줄

def database_override
  get(DATABASE_OVERRIDE_KEY)
end

#database_override=(name) ⇒ string | 기호

글로벌 데이터베이스 재정의를 설정합니다.

예시:

글로벌 데이터베이스 재정의를 설정합니다.

Threaded.database_override = :testing

매개변수:

  • 이름 (string | 기호)

    전역 재정의 이름입니다.

반환합니다:

  • (string | 기호)

    재정의.



152
153
154
# 파일 'lib/mongoid/threaded.rb', 152줄

def database_override=(이름)
  세트(DATABASE_OVERRIDE_KEY, 이름)
end

#삭제(key) ⇒ 객체

로컬 저장 에서 명명된 변수를 제거합니다.

매개변수:

  • (string | 기호)

    제거 변수의 이름입니다.



109
110
111
# 파일 'lib/mongoid/threaded.rb', 109줄

def 삭제()
  스토리지.삭제()
end

#execution_callbacks=(플래그) ⇒ 객체

현재 스레드에 대해 기본적으로 문서 콜백을 호출할지 여부를 나타냅니다. 개별 문서가 콜백 동작을 추가로 재정의할 수 있지만 이는 기본 동작에 사용됩니다.

매개변수:

  • flag (true | false)

    문서 콜백을 기본값 으로 실행할지 여부입니다.



543
544
545
# 파일 'lib/mongoid/threaded.rb', 543줄

def execution_callbacks=(flag)
  세트(EXECATE_CALLBACKS, flag)
end

#execution_callbacks?true | false

현재 스레드에 대해 기본값 문서 콜백을 실행해야 하는지 여부를 쿼리합니다.

달리 표시되지 않는 한(#execute_callbacks=로) 이는 true를 반환합니다.

반환합니다:

  • (true | false)

    문서 콜백을 기본값 으로 실행할지 여부입니다.



529
530
531
532
533
534
535
# 파일 'lib/mongoid/threaded.rb', 529줄

def 실행 콜백?
  만약 가 있나요?(EXECATE_CALLBACKS)
    get(EXECATE_CALLBACKS)
  other
    true
  end
end

#실행 중이세요?(name) ⇒ true

명명된 스택을 실행하는 중입니다.

예시:

스택 실행 중인가요?

Threaded.executing?(:create)

매개변수:

  • 이름 (기호)

    스택 의 이름

반환합니다:

  • (true)

    스택 이 실행 중인 경우.



164
165
166
# 파일 'lib/mongoid/threaded.rb', 164줄

def 실행 중이세요?(이름)
  !스택(이름).비어 있나요?
end

#exit_autosave(문서) ⇒ 객체

현재 스레드에서 문서 자동 저장을 종료합니다.

예시:

자동 저장을 종료합니다.

Threaded.exit_autosave(doc)

매개변수:

  • 문서 (문서)

    자동 저장할 문서입니다.



229
230
231
# 파일 'lib/mongoid/threaded.rb', 229줄

def exit_autosave(문서)
  autosave_for(문서.클래스).delete_one(문서._id)
end

#exit_execution(name) ⇒ true

명명된 스레드 로컬 스택에서 종료합니다.

예시:

스택을 종료합니다.

Threaded.exit_execution(:create)

매개변수:

  • 이름 (기호)

    스택 의 이름

반환합니다:

  • (true)

    참.



176
177
178
# 파일 'lib/mongoid/threaded.rb', 176줄

def exit_execution(이름)
  스택(이름).
end

#exit_contact_merged(문서) ⇒ 객체

현재 스레드에 있는 문서 의 터치 병합 플래그를 지웁니다.

예시:

터치 병합을 종료합니다.

Threaded.exit_touch_merged(doc)

매개변수:

  • 문서 (문서)

    지울 문서 입니다.



249
250
251
# 파일 'lib/mongoid/threaded.rb', 249줄

def exit_contact_merged(문서)
  Touch_merged_for(문서.클래스).delete_one(문서._id)
end

#exit_validate(문서) ⇒ 객체

현재 스레드에서 문서 유효성 검사를 종료합니다.

예시:

유효성 검사 를 종료합니다.

Threaded.exit_validate(doc)

매개변수:

  • 문서 (문서)

    유효성을 검사할 문서입니다.



239
240
241
# 파일 'lib/mongoid/threaded.rb', 239줄

def exit_validate(문서)
  validations_for(문서.클래스).delete_one(문서._id)
end

#exit_without_default_scope(klass) ⇒ 객체

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

현재 스레드에서 지정된 모델에 대한 기본값 범위를 표시하지 않도록 종료합니다.

예시:

기본 범위 스택 없이 종료합니다.

Threaded.exit_without_default_scope(klass)

매개변수:

  • class (클래스)

    기본 범위 지정을 억제 해제할 모델입니다.



273
274
275
# 파일 'lib/mongoid/threaded.rb', 273줄

def exit_without_default_scope(class)
  스택(:without_default_scope).삭제(class)
end

#get(키, 기본값(&default)) ⇒ 객체 | nil

지정된 이름으로 스레드 또는 파이버 로컬 변수를 쿼리합니다. 차단 주어졌을 때 변수가 아직 존재하지 않는 경우, 차단 의 반환 값은 반환하기 전에 변수의 값으로 설정하다 됩니다.

애플리케이션(특히 Mongoid)에서 Thread#[] 대신 이 메서드를 사용하는 것이 매우 중요합니다. Thread#[]는 실제로 파이버 로컬 변수용이고 Mongoid는 일부 콜백에서 구현 세부 정보로 파이버를 사용하기 때문입니다. 스레드 로컬 상태 파이버 로컬 저장 에 설정하면 관련 콜백이 다른 파이버에서 실행 때 상태 표시되지 않습니다.

영향을 받는 콜백은 포함된 하위 항목에 대한 계단식 콜백입니다.

매개변수:

  • (string | 기호)

    쿼리 할 변수의 이름

  • 기본 (Proc)

    이 변수의 기본값 (초기값) 값을 반환해야 하는 선택적 차단 .

반환합니다:

  • (객체 | nil)

    쿼리된 변수의 값이거나, 설정하다 되지 않았고 기본값 제공되지 않은 경우 nil입니다.



84
85
86
87
88
89
90
91
92
93
# 파일 'lib/mongoid/threaded.rb', 84줄

def get(, &기본)
  결과 = 스토리지[]

  만약 결과.nil? && 기본
    결과 = yield
    세트(, 결과)
  end

  결과
end

#get_session(client: nil) ⇒ Mongo::Session | nil

참고:

이전 버전과의 호환성을 위해 다음 없이 이 메서드를 호출할 수 있습니다.

클라이언트 의 이 스레드에 대해 캐시된 세션을 가져옵니다.

client 매개 변수를 지정합니다.

매개변수:

  • 고객 (Mongo::Client | nil) (기본값: nil)

    세션을 캐시 할 클라이언트 입니다.

반환합니다:

  • (Mongo::Session | nil)

    이 스레드에 캐시된 세션 또는 nil입니다.



482
483
484
# 파일 'lib/mongoid/threaded.rb', 482줄

def get_session(클라이언트: nil)
  세션[고객]
end

#has?(키) ⇒ true | false

로컬 저장 에 명명된 변수가 있는지 쿼리합니다.

매개변수:

  • (string | 기호)

    쿼리 변수의 이름입니다.

반환합니다:

  • (true | false)

    주어진 변수의 존재 여부.



118
119
120
# 파일 'lib/mongoid/threaded.rb', 118줄

def 가 있나요?()
  스토리지.키?()
end

#modified_documentsHash<Mongo::Session, Set<Mongoid::Document>

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

수정된 문서의 스레드 저장 를 반환합니다.

반환합니다:

  • (Hash<Mongo::Session, Set<Mongoid::Document>>)

    세션별로 인덱싱된 수정된 문서입니다.



562
563
564
# 파일 'lib/mongoid/threaded.rb', 562줄

def Modifyed_documents
  get(수정_DOCUMENTS_KEY) { 해시.신규 { |h, k| h[k] = 세트.신규 } }
end

#재설정!객체

현재 스레드 또는 파이버 로컬 저장 초기 상태 로 재설정합니다. 이는 새 스레드나 파이버를 시작할 때 상태 깨끗한지 확인하는 데 유용합니다.

Mongoid::Config.real_isolation_level의 값은 현재 스레드 또는 파이버의 저장 재설정할지 여부를 결정하는 데 사용됩니다.



53
54
55
56
57
58
59
60
61
62
63
# 파일 'lib/mongoid/threaded.rb', 53줄

def reset!
  case Config.real_isolation_level
  when :thread
    스레드.Current.thread_variable_set(STORAGE_KEY, nil)
  when :파이버
    파이버[STORAGE_KEY] = {}
    파이버[STORAGE_OWNER_KEY] = 파이버.Current.object_id
  other
    올리다 "Unknown 격리 수준: #{Config.real_isolation_level.inspect}"
  end
end

#sessionsHash<Integer, Set>

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

세션의 스레드 저장 를 반환합니다.

반환합니다:

  • (Hash<Integer, Set>)

    클라이언트 객체 ID 를 기준으로 인덱싱된 세션입니다.



552
553
554
# 파일 'lib/mongoid/threaded.rb', 552줄

def 세션
  get(SESSIONS_KEY) { {}.compare_by_identity }
end

#설정하다(키, 값) ⇒ 객체

지정된 이름을 사용하여 로컬 저장 의 변수를 지정된 값으로 설정합니다. 이 메서드가 필요한 이유와 포함된 하위 항목의 계단식 콜백에서 Thread#[]=를 피해야 하는 이유에 대한 논의는 #get을 참조하세요.

매개변수:

  • (string | 기호)

    설정하다 변수의 이름입니다.

  • value (객체 | nil)

    설정하다 변수의 값(또는 변수 설정을 해제하려면 nil)



102
103
104
# 파일 'lib/mongoid/threaded.rb', 102줄

def 세트(, value)
  스토리지[] = value
end

#set_current_scope(scope, klass) ⇒ 기준

현재 Mongoid 범위를 설정합니다. 다중 모델 범위 체인에 안전합니다.

예시:

범위를 설정합니다.

Threaded.current_scope(scope, klass)

매개변수:

  • 범위 (기준)

    현재 범위입니다.

  • class (클래스)

    현재 모델 클래스입니다.

반환합니다:



339
340
341
342
343
344
345
346
# 파일 'lib/mongoid/threaded.rb', 339줄

def set_current_scope(범위, class)
  만약 범위.nil?
    unset_current_scope(class)
  other
    current_scope = get(CURRENT_SCOPE_KEY) { {} }
    current_scope[class] = 범위
  end
end

#set_session(session, 클라이언트: nil) ⇒ 객체

참고:

이전 버전과의 호환성을 위해 다음 없이 이 메서드를 호출할 수 있습니다.

클라이언트 에 대해 이 스레드에 대한 세션을 캐시합니다.

client 매개 변수를 지정합니다.

매개변수:

  • Session (Mongo::Session)

    저장할 세션입니다.

  • 고객 (Mongo::Client | nil) (기본값: nil)

    세션을 캐시 할 클라이언트 입니다.



470
471
472
# 파일 'lib/mongoid/threaded.rb', 470줄

def set_session(Session, 클라이언트: nil)
  세션[고객] = Session
end

#스택(이름) ⇒ 배열

명명된 스택 을 가져옵니다.

예시:

이름으로 스택 가져오기

Threaded.stack(:create)

매개변수:

  • 이름 (기호)

    스택 의 이름

반환합니다:

  • (배열)

    스택.



188
189
190
# 파일 'lib/mongoid/threaded.rb', 188줄

def 스택(이름)
  get(STACK_KEYS[이름]) { [] }
end

#touch_merged해시

현재 스레드에서 모든 터치 병합 추적을 가져옵니다.

예시:

모든 터치 병합을 가져옵니다.

Threaded.touch_merged

반환합니다:

  • (해시)

    현재 터치 병합된 추적 해시입니다.



447
448
449
# 파일 'lib/mongoid/threaded.rb', 447줄

def 터치 병합
  get(TOUCH_MERGED_KEY) { {} }
end

#터치 병합?(문서) ⇒ true | false

문서 가 터치 업데이트가 원자성 삽입으로 병합된 것으로 플래그가 지정되었나요?

예시:

문서 가 터치 병합되었나요?

Threaded.touch_merged?(doc)

매개변수:

  • 문서 (문서)

    확인할 문서 입니다.

반환합니다:

  • (true | false)

    문서의 터치가 병합된 경우.



393
394
395
# 파일 'lib/mongoid/threaded.rb', 393줄

def 터치 병합?(문서)
  Touch_merged_for(문서.클래스).포함?(문서._id)
end

# 터치_병합_포(klass)배열

클래스의 현재 스레드에서 터치 병합된 모든 문서 ID를 가져옵니다.

예시:

모든 터치 병합을 가져옵니다.

Threaded.touch_merged_for(Sofa)

매개변수:

  • class (클래스)

    확인할 클래스입니다.

반환합니다:

  • (배열)

    현재 터치 병합된 문서 ID입니다.



459
460
461
# 파일 'lib/mongoid/threaded.rb', 459줄

def Touch_merged_for(class)
  터치 병합[class] ||= []
end

#검증되었나요?(문서) ⇒ true | false

문서 가 현재 스레드에서 검증되었나요?

예시:

문서 가 검증되었나요?

Threaded.validated?(doc)

매개변수:

  • 문서 (문서)

    확인할 문서 입니다.

반환합니다:

  • (true | false)

    문서 가 검증된 경우.



380
381
382
# 파일 'lib/mongoid/threaded.rb', 380줄

def 검증되었나요?(문서)
  validations_for(문서.클래스).포함?(문서._id)
end

#validations해시

현재 스레드에 대한 모든 유효성 검사를 가져옵니다.

예시:

모든 유효성 검사를 가져옵니다.

Threaded.validations

반환합니다:

  • (해시)

    현재 유효성 검사.



413
414
415
# 파일 'lib/mongoid/threaded.rb', 413줄

def 유효성 검사
  get(VALIDATIONS_KEY) { {} }
end

#validations_for(klass) ⇒ Array

클래스의 현재 스레드에 대한 모든 유효성 검사를 가져옵니다.

예시:

모든 유효성 검사를 가져옵니다.

Threaded.validations_for(Person)

매개변수:

  • class (클래스)

    확인할 클래스입니다.

반환합니다:

  • (배열)

    현재 유효성 검사.



437
438
439
# 파일 'lib/mongoid/threaded.rb', 437줄

def validations_for(class)
  유효성 검사[class] ||= []
end

#without_default_scope?(klass) ⇒ 부울

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

지정된 클래스의 기본값 범위가 현재 스레드에서 표시되지 않나요?

예시:

지정된 클래스의 기본값 범위가 표시되지 않나요?

Threaded.without_default_scope?(klass)

매개변수:

  • class (클래스)

    기본값 범위 억제를 확인할 모델입니다.

반환합니다:



356
357
358
# 파일 'lib/mongoid/threaded.rb', 356줄

def without_default_scope?(class)
  스택(:without_default_scope).포함?(class)
end