클래스: Mongo::Database::View

상속:
객체
  • 객체
모두 표시
확장자:
전달 가능
다음을 포함합니다.
열거 가능, 재시도 가능
다음에 정의됨:
build/ruby-driver-v2.19/lib/mongo/database/view.rb

개요

데이터베이스의 뷰를 나타내는 클래스입니다.

이후:

  • 2.0.0

인스턴스 속성 요약 접기

인스턴스 메서드 요약 접기

Retryable에 포함된 메서드

#read_Worker, #select_server, #write_Worker

생성자 세부 정보

#initialize(database) ⇒ View

새 데이터베이스 뷰를 만듭니다.

예시:

새 데이터베이스 뷰를 만듭니다.

View::Index.new(database)

매개변수:

이후:

  • 2.0.0



127
128
129
130
131
132
# 파일 'build/ruby-driver-v2.19/lib/mongo/database/view.rb', 줄 127

def 초기화(database)
  @database = database
  @batch_size =  nil
  @limit = nil
  @collection = @database[Database::명령]
end

인스턴스 속성 세부 정보

#batch_size정수 (읽기 전용)

반환값 batch_size listCollections 명령을 보낼 때 결과 배치의 크기입니다.

반환합니다:

  • (정수)

    batch_size listCollections 명령을 보낼 때 결과 배치의 크기입니다.

이후:

  • 2.0.0



36
37
38
# 파일 'build/ruby-driver-v2.19/lib/mongo/database/view.rb', 줄 36

def batch_size
  @batch_size
end

#collectioncollection (읽기 전용)

반환값 collection 명령 collection입니다.

반환합니다:

  • (컬렉션)

    collection 명령 컬렉션입니다.

이후:

  • 2.0.0



42
43
44
# 파일 'build/ruby-driver-v2.19/lib/mongo/database/view.rb', 줄 42

def 컬렉션
  @collection
end

#데이터베이스객체 (읽기 전용)

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

이후:

  • 2.0.0



135
136
137
# 파일 'build/ruby-driver-v2.19/lib/mongo/database/view.rb', 줄 135

def database
  @database
end

#limit정수 (읽기 전용)

명령을 보낼 때 제한을 반환합니다.

반환합니다:

  • (정수)

    limit 명령을 보낼 때 제한을 설정합니다.

이후:

  • 2.0.0



39
40
41
# 파일 'build/ruby-driver-v2.19/lib/mongo/database/view.rb', 줄 39

def limit
  @limit
end

인스턴스 메서드 세부 정보

#aggregate(pipeline, options = {}) ⇒ Collection::View::Aggregation

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

데이터베이스 뷰에서 애그리게이션을 실행합니다.

예시:

문서를 집계합니다.

view.aggregate([
  { "$listLocalSessions" => {} }
])

매개변수:

  • 파이프라인 (Array<Hash>)

    집계 파이프라인.

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

    애그리게이션 옵션.

반환합니다:

이후:

  • 2.10.0



151
152
153
# 파일 'build/ruby-driver-v2.19/lib/mongo/database/view.rb', 줄 151

def 집계(파이프라인, 옵션 = {})
  컬렉션::보기::집계.신규(self, 파이프라인, 옵션)
end

#collection_names(options = {}) ⇒ Array<String>

참고:

반환되는 컬렉션 이름 집합은 요청을 처리하는 MongoDB 서버의 버전에 따라 달라집니다.

데이터베이스 에 있는 비시스템 컬렉션의 모든 이름을 가져옵니다.

매개변수:

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

    listCollections 명령에 대한 옵션입니다.

옵션 해시(options):

  • :batch_size (정수)

    listCollections 명령에서 반환된 결과의 배치 크기입니다.

  • :filter (해시)

    반환된 컬렉션에 대한 필터입니다.

  • :authorized_collections (true, false)

    true로 설정하면 액세스 제어가 시행될 때 필요한 권한이 없는 사용자도 명령을 실행할 수 있도록 하는 플래그입니다.

  • :comment (객체)

    이 명령에 첨부할 사용자 제공 코멘트입니다.

    mongodb.com/ko-kr/docs/manual/reference/command/listCollections/를 참조하세요. 자세한 내용 및 사용법은 다음을 참조하세요.

  • :session (세션)

    사용할 세션입니다.

반환합니다:

  • (Array<String>)

    모든 비시스템 컬렉션의 이름입니다.

이후:

  • 2.0.0



67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
# 파일 'build/ruby-driver-v2.19/lib/mongo/database/view.rb', 줄 67

def collection_names(옵션 = {})
  @batch_size = 옵션[:batch_size]
  Session = 고객.send(:get_session, 옵션)
  cursor = read_with_retry_cursor(Session, ServerSelector.기본, self) do |서버|
    send_initial_query(서버, Session, 옵션.merge(name_only: true))
  end
  cursor.map do |정보|
    만약 cursor.initial_result.connection_description.기능.list_collections_enabled?
      정보['name']
    other
      (정보['name'] &&
        정보['name'].sub("#{@database.name}.", ''))
    end
  end.거부 do |이름|
    이름.start_with?('시스템.') || 이름.포함?('$')
  end
end

#list_collections(options = {}) ⇒ Array<Hash>

참고:

반환되는 컬렉션 집합과 컬렉션당 정보 해시의 스키마는 요청을 처리하는 MongoDB 서버 버전에 따라 다릅니다.

데이터베이스의 모든 컬렉션에 대한 정보를 가져옵니다.

예시:

각 컬렉션에 대한 정보를 가져옵니다.

database.list_collections

매개변수:

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

옵션 해시(options):

  • :filter (해시)

    반환된 컬렉션에 대한 필터입니다.

  • :name_only (true, false)

    명령이 컬렉션/view 이름과 유형만 반환할지, 아니면 이름과 기타 정보를 모두 반환할지 여부를 나타냅니다.

  • :authorized_collections (true, false)

    true로 설정하다 하고 nameOnly: true와 함께 사용하면 액세스 제어가 시행될 때 필요한 권한 이 없는 사용자도 명령을 실행 수 있는 플래그입니다.

    mongodb.com/ko-kr/docs/manual/reference/command/listCollections/를 참조하세요. 자세한 내용 및 사용법은 다음을 참조하세요.

  • :session (세션)

    사용할 세션입니다.

  • :deserialize_as_bson (부울)

    가능한 BSON types Ruby 경우 네이티브 유형 대신 을 사용하여 이 메시지를 역직렬화할지 여부입니다.

반환합니다:

  • (Array<Hash>)

    데이터베이스의 각 컬렉션에 대한 정보입니다.

이후:

  • 2.0.5



114
115
116
117
# 파일 'build/ruby-driver-v2.19/lib/mongo/database/view.rb', 줄 114

def list_collections(옵션 = {})
  Session = 고객.send(:get_session, 옵션)
  collections_info(Session, ServerSelector.기본, 옵션)
end