Class: Mongo::Database::View

Herda:
Objeto
  • Objeto
mostrar tudo
Estendido por:
Encaminhável
Inclui:
Enumerável , repetível
Definido em:
build/ruby-driver-v2.19/lib/mongo/database/view.rb

Visão geral

Uma classe que representa uma visualização de um banco de dados.

Desde:

  • 2.0.0

Recolhimento do Resumo do atributo de instância

Recolhimento do Resumo do método de instância

Métodos incluídos no Retryable

#read_worker, #select_server, #write_worker

Detalhes do construtor

#inicializar(banco de dados) ➤ Visualizar

Crie a nova visualização do banco de dados.

Exemplos:

Crie a nova visualização do banco de dados.

View::Index.new(database)

Parâmetros:

Desde:

  • 2.0.0



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

def inicializar(database)
  @database = database
  @batch_size =  nada
  @limit = nada
  @collection = @database[Database::Comando]
end

Detalhes do atributo da instância

#batch_size ➤ inteiro (somente leitura)

Retorna batch_size O tamanho do lote de resultados ao enviar o comando listCollections.

Retorna:

  • (Inteiro)

    batch_size O tamanho do lote de resultados ao enviar o comando listCollections.

Desde:

  • 2.0.0



36
37
38
# File 'build/ruby-driver-v2.19/lib/mongo/database/view.rb', linha 36

def batch_size
  @batch_size
end

#collectionCollection (somente leitura)

Retorna a collection A collection de comandos.

Retorna:

  • (Collection)

    collection A collection de comandos.

Desde:

  • 2.0.0



42
43
44
# File 'build/ruby-driver-v2.19/lib/mongo/database/view.rb', linha 42

def collection
  @collection
end

#databaseObject (only read)

Este método faz parte de uma API privada. Evite usar esse método, se possível, pois ele pode ser removido ou alterado no futuro.

Desde:

  • 2.0.0



135
136
137
# File 'build/ruby-driver-v2.19/lib/mongo/database/view.rb', linha 135

def database
  @database
end

#limiteinteiro (somente leitura)

Retorna limite O limite ao enviar um comando.

Retorna:

  • (Inteiro)

    limite O limite ao enviar um comando.

Desde:

  • 2.0.0



39
40
41
# File 'build/ruby-driver-v2.19/lib/mongo/database/view.rb', linha 39

def limit
  @limit
end

Detalhes do método de instância

#aggregation(pipeline, options = {}) ➤ Collection::View::aggregation

Este método faz parte de uma API privada. Evite usar esse método, se possível, pois ele pode ser removido ou alterado no futuro.

Execute uma agregação na visualização do banco de dados.

Exemplos:

Documentos agregados.

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

Parâmetros:

  • gasoduto (Array<Hash>)

    O pipeline de agregação .

  • opções (Hash) (padrão para: {})

    As opções de aggregation.

Retorna:

Desde:

  • 2.10.0



151
152
153
# File 'build/ruby-driver-v2.19/lib/mongo/database/view.rb', linha 151

def Agregação(gasoduto, opções = {})
  collection::Vista::Agregação.Novo(auto, gasoduto, opções)
end

#collection_names(opções = {}) ➤ Array<String>

Observação:

O conjunto de nomes de collection retornados depende da versão do servidor MongoDB que atende à solicitação.

Obtenha todos os nomes das coleções que não são do sistema no banco de banco de dados.

Parâmetros:

  • opções (Hash) (padrão para: {})

    Opções para o comando listCollections.

Hash de opções (opções):

  • :batch_size (Inteiro)

    O tamanho do lote para os resultados retornados do comando listCollections.

  • :filter (Hash)

    Um filtro para as collections retornadas.

  • : authorized_collections (verdadeiro, falso)

    Um sinalizador, quando definido como verdadeiro, permite a um usuário sem o privilégio necessário executar o comando quando o controle de acesso é imposto.

  • :comentário (Objeto)

    Um comentário fornecido pelo usuário para anexar a este comando.

    Consulte mongodb.com/pt-br/docs/manual/reference/command/listCollections/ para obter mais informações e uso.

  • :session (Sessão)

    A sessão a ser usada.

Retorna:

  • (Array<String>)

    Os nomes de todas as coleções que não são do sistema.

Desde:

  • 2.0.0



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

def collection_names(opções = {})
  @batch_size = opções[:batch_size]
  session = Cliente.enviar(:get_session, opções)
  cursor = read_with_retry_cursor(session, ServerSelector.Principal, auto) fazer |Servidor|
    send_initial_query(Servidor, session, opções.mesclar(name_only: true))
  end
  cursor.map fazer |informações|
    se cursor.initial_result.connection_description.características.list_collections_enabled?
      informações['nome']
    mais
      (informações['nome'] &&
        informações['nome'].sub("#{@database.name}.", ''))
    end
  end.rejeitar fazer |name|
    name.start_with?('.') || name.incluir?('$')
  end
end

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

Observação:

O conjunto de coleções retornadas e o esquema do hash de informações por coleção depende da versão do servidor MongoDB que atende à solicitação.

Obtenha informações sobre todas as coleções no banco de dados.

Exemplos:

Obtenha informações sobre cada coleção.

database.list_collections

Parâmetros:

  • opções (Hash) (padrão para: {})

Hash de opções (opções):

  • :filter (Hash)

    Um filtro para as collections retornadas.

  • :name_only (verdadeiro, falso)

    Indica se o comando deve retornar apenas os nomes e o tipo da collection/visualização ou se deve retornar o nome e outras informações

  • : authorized_collections (verdadeiro, falso)

    Um sinalizador, quando definido como true e usado com nameOnly: true, que permite a um usuário sem o privilégio necessário executar o comando quando o controle de acesso é imposto

    Consulte mongodb.com/pt-br/docs/manual/reference/command/listCollections/ para obter mais informações e uso.

  • :session (Sessão)

    A sessão a ser usada.

  • :deserialize_as_bson (Booleano)

    Se deve desserializar esta mensagem usando BSON types em vez de tipos Ruby nativos sempre que possível.

Retorna:

  • (Array<Hash>)

    Informações para cada collection no banco de dados.

Desde:

  • 2.0.5



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

def list_collections(opções = {})
  session = Cliente.enviar(:get_session, opções)
  collections_info(session, ServerSelector.Principal, opções)
end