Overview
En esta página, puede ver ejemplos de código copiables que muestran métodos comunes del controlador Ruby que puede usar para leer datos de MongoDB.
Tip
Para obtener más información sobre cualquiera de los métodos que se muestran en esta página, consulte el enlace proporcionado en cada sección.
Para utilizar un ejemplo de esta página, copie el ejemplo de código en el
Aplicación de ejemplo a continuación o su propia aplicación. Asegúrese de reemplazar todos los marcadores de posición en los ejemplos de código, como <connection string URI>, con los valores relevantes para su implementación de MongoDB.
Aplicación de muestra
Puede utilizar la siguiente aplicación de muestra para probar los ejemplos de código en esta página. Para usar la aplicación de muestra, siga los siguientes pasos:
Asegúrese de tener el controlador Ruby instalado en su proyecto Ruby.
Copia el siguiente código y pégalo en un nuevo archivo
.rb.Copia un ejemplo de código de esta página y pégalo en las líneas especificadas del archivo.
1 require 'bundler/inline' 2 3 gemfile do 4 source 'https://rubygems.org' 5 gem 'mongo' 6 end 7 8 uri = '<connection string>' 9 10 Mongo::Client.new(uri) do |client| 11 database = client.use('<database name>') 12 collection = database['<collection name>'] 13 14 # Start example code here 15 16 # End example code here 17 end
Encontrar uno
El siguiente ejemplo recupera un documento que coincide con los criterios especificados por el filtro dado:
document = collection.find(name: '<value>').first puts document
Para obtener más información sobre el método first, consulte la Guíade recuperación de datos.
Encontrar varios
El siguiente ejemplo recupera todos los documentos que coinciden con los criterios especificados por el filtro dado:
results = collection.find(founded_year: '<value>')
Para obtener más información sobre el find método, consulte la guía Recuperar datos.
Contar documentos en una colección
El siguiente ejemplo devuelve el número de documentos en la colección especificada:
result = collection.count_documents puts "Number of documents: #{result}"
Para obtener más información sobre el count_documents método, consulte la guía Contar documentos.
Contar documentos devueltos de una query
El siguiente ejemplo devuelve la cantidad de documentos en la colección especificada que coinciden con los criterios de consulta:
result = collection.count_documents('key': '<value>') puts "value: #{result}"
Para obtener más información sobre el countDocuments() método, consulte la guía Contar documentos.
Recuento estimado de documentos
El siguiente ejemplo devuelve un número aproximado de documentos en la colección especificada según los metadatos de la colección:
result = collection.estimated_document_count puts "Estimated number of documents: #{result}"
Para obtener más información sobre el estimated_document_count() método, consulte la guía Contar documentos.
Retrieve Distinct Values
El siguiente ejemplo devuelve todos los valores distintos del nombre de campo especificado en una colección determinada:
results = collection.distinct('field')
Para obtener más información sobre el método distinct, consulta la guía Recuperar Valores Únicos de Campo.
Supervisar los cambios en los datos
El siguiente ejemplo crea un flujo de cambios para una colección determinada e imprime los eventos de cambio posteriores en esa colección:
stream = collection.watch collection.insert_one(a: 1) doc = stream.first process(doc)
Para obtener más información sobre el watch() método, consulte la guía Monitorear cambios en los datos.