모듈: Mongoid::CollectionConfigurable::ClassMethods
- 다음에 정의됨:
- lib/mongoid/collection_configurable.rb
인스턴스 메서드 요약 접기
-
#create_collection(force: false) ⇒ 객체
호출된 Mongoid 모델에 대한 컬렉션을 생성합니다.
인스턴스 메서드 세부 정보
#create_collection(force: false) ⇒ 객체
호출된 Mongoid 모델에 대한 컬렉션을 생성합니다.
이 메서드는 기존 컬렉션을 다시 만들지 않습니다.
문서 에 'collection_options' 키가 있는 'store_in' 매크로가 포함된 경우,
these options are used when creating the collection.
24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 |
# 파일 'lib/mongoid/collection_configurable.rb', 줄 24 def create_collection(force: 거짓) 만약 collection_name.비어 있나요? # 이는 익명 클래스일 가능성이 높으므로 무시합니다. 반환 end 만약 collection_name.match(/^system\./) # 시스템 컬렉션으로 아무것도 하지 않습니다. 반환 end 만약 force 컬렉션.제거 end 만약 = 컬렉션.database.list_collections(필터: { 이름: collection_name.to_s }).first 만약 force 올리다 오류::DropCollectionFailure.신규(collection_name) other 로거.debug( "MONGOID: 컬렉션 '#{collection_name}'이(가) 이미 존재합니다 . + "데이터베이스 '#{database_name}' 및 옵션 '#{}'." ) end other 시작 컬렉션.database[collection_name, .가져오기(:collection_options, {})].create 구출 mongo::오류::OperationFailure => e 올리다 오류::CreateCollectionFailure.신규( collection_name, [:collection_options], e ) end end end |