Para agentes de IA: hay un índice de documentación disponible en https://www.mongodb.com/es/docs/llms.txt — versiones en markdown de todas las páginas están disponibles agregando .md a cualquier ruta URL.
Docs Menu

Insertar documentos

En esta guía, puedes aprender cómo usar el controlador de Ruby para agregar documentos a una colección MongoDB mediante la realización de operaciones de inserción.

Una operación de inserción inserta uno o más documentos en una colección de MongoDB. Puedes realizar una operación de inserción mediante los siguientes métodos:

  • insert_one para insertar un solo documento

  • insert_many para insertar uno o más documentos

Los ejemplos de esta guía utilizan la colección restaurants en la base de datos sample_restaurants de los conjuntos de datos de muestra de Atlas. Para acceder a esta colección desde tu aplicación Ruby, crea un objeto Mongo::Client que se conecte a un clúster de Atlas y asigna los siguientes valores a tus variables database y collection:

database = client.use('sample_restaurants')
collection = database[:restaurants]

Para aprender cómo crear un clúster gratuito de MongoDB Atlas y cargar los conjuntos de datos de ejemplo, consulta la guía MongoDB Get Started.

En una colección de MongoDB, cada documento debe contener un campo _id con un valor de campo único.

MongoDB permite gestionar este campo de dos formas:

  • Establece el campo _id para cada documento tú mismo, asegurándote de que cada valor sea único.

  • Permite que el driver genere automáticamente valores únicos de BSON::ObjectId para cada campo _id del documento.

A menos que pueda garantizar la exclusividad, recomendamos dejar que el controlador genere automáticamente los valores de _id.

Nota

Los valores _id duplicados violan las restricciones de índice único, lo que hace que el controlador devuelva un error.

Para obtener más información sobre el campo _id, consulta la guía Índices únicos en el manual del MongoDB Server.

Para obtener más información sobre la estructura y las reglas de los documentos, consulta la guía de Documentos en el manual de MongoDB Server.

Para añadir un solo documento a una colección de MongoDB, llama al método insert_one y pasa el documento que quieres insertar.

El siguiente ejemplo inserta un documento en la colección restaurants:

document = { name: 'Neighborhood Bar & Grill', borough: 'Queens' }
collection.insert_one(document)

Para añadir varios documentos a una colección de MongoDB, llama al método insert_many y pasa una lista de documentos que deseas insertar.

El siguiente ejemplo inserta dos documentos en la colección restaurants:

documents = [
{ name: 'Metropolitan Cafe', borough: 'Queens' },
{ name: 'Yankee Bistro', borough: 'Bronx' }
]
collection.insert_many(documents)

Usted puede pasar un objeto Hash como parámetro al método insert_one para establecer opciones y configurar la operación de inserción. Si no especifica ninguna opción, el driver realizará la operación de inserción con la configuración por defecto.

La siguiente tabla describe las opciones que puede configurar para la insert_one operación:

Opción
Descripción

bypass_document_validation

Indica al controlador si debe ignorar la validación a nivel de documento. Para obtener más información, consulte Validación de esquema en el manual del servidor MongoDB.
El valor predeterminado false es.

comment

Establece un comentario para adjuntar a la operación. Para más información, consulte la guía insert command campos en el manual del MongoDB Server.

session

Establece la sesión que se utilizará para la operación. Para obtener más información sobre las sesiones, consulte Sesiones de cliente y garantías de coherencia causal en el manual del servidor MongoDB.

write_concern

Establece el nivel de confirmación de escritura (write concern) para la operación. Para obtener más información, consulte la guía Nivel de confirmación de escritura (write concern) en el manual de MongoDB Server.

Puedes configurar los ajustes anteriores en el método insert_many pasando un Hash como parámetro en la llamada al método. También puedes utilizar la opción ordered para especificar el orden en el que el driver inserta documentos en MongoDB.

El siguiente código utiliza el método insert_many para insertar tres nuevos documentos en una colección. Debido a que la opción bypass_document_validation está habilitada, esta operación de inserción omite la validación a nivel de documento.

documents = [
{ name: 'Cloudy Day', borough: 'Brooklyn' },
{ name: 'Squall or Shine', borough: 'Staten Island' }
{ name: 'Rose Field', borough: 'Queens' }
]
options = { bypass_document_validation: true }
collection.insert_many(documents, options)

Para obtener más información sobre cualquiera de los métodos mencionados en esta guía, consulta la siguiente documentación de la API: