Volver a la página principal
martes 24 septiembre 2024
36

Cómo conectar con MongoDB en Node.js

Conectar MongoDB con Node.js es un proceso sencillo que se puede lograr utilizando el módulo oficial de MongoDB llamado mongodb o a través de una librería más avanzada como Mongoose, que facilita la interacción con MongoDB mediante un sistema de modelos y esquemas.

A continuación, veremos cómo conectarse a MongoDB utilizando ambos métodos: con el cliente nativo mongodb y con Mongoose.

Conexión a MongoDB con el paquete mongodb

1. Instalar el paquete mongodb

Primero, asegúrate de tener Node.js instalado. Luego, crea un proyecto y dentro de tu proyecto instala el paquete mongodb con el siguiente comando:

npm install mongodb

2. Crear una conexión con MongoDB

A continuación, configura la conexión con MongoDB. Crea un archivo llamado app.js e importa el cliente MongoClient desde el paquete mongodb.

// Importar el cliente MongoClient desde el paquete mongodb
const { MongoClient } = require('mongodb');

// URL de conexión a MongoDB (por ejemplo, una instancia local)
const url = 'mongodb://localhost:27017';

// Nombre de la base de datos
const dbName = 'miBaseDeDatos';

// Crear una instancia de MongoClient
const client = new MongoClient(url);

async function conectarMongoDB() {
  try {
    // Conectar al servidor de MongoDB
    await client.connect();
    console.log('Conectado correctamente a MongoDB');

    // Seleccionar la base de datos
    const db = client.db(dbName);

    // Operaciones en la base de datos
    const coleccion = db.collection('miColeccion');
    const documento = await coleccion.findOne({});
    console.log('Documento encontrado:', documento);

  } catch (error) {
    console.error('Error al conectar con MongoDB:', error);
  } finally {
    // Cerrar la conexión
    await client.close();
  }
}

conectarMongoDB();

3. Ejecutar el código

Guarda el archivo y ejecuta el código con el siguiente comando:

node app.js

Si todo está configurado correctamente, verás un mensaje que indica que la conexión se ha realizado correctamente.

Conexión a MongoDB con Mongoose

Mongoose es una librería ODM (Object Data Modeling) que simplifica la interacción con MongoDB, proporcionando esquemas para modelar los datos y validarlos.

1. Instalar Mongoose

Para instalar Mongoose, ejecuta el siguiente comando:

npm install mongoose

2. Configurar la conexión con Mongoose

Crea un archivo llamado app.js y configura la conexión a MongoDB de la siguiente manera:

// Importar Mongoose
const mongoose = require('mongoose');

// URL de conexión a MongoDB
const url = 'mongodb://localhost:27017/miBaseDeDatos';

// Conectarse a MongoDB con Mongoose
mongoose.connect(url, { useNewUrlParser: true, useUnifiedTopology: true })
  .then(() => {
    console.log('Conectado a MongoDB con Mongoose');
  })
  .catch((error) => {
    console.error('Error al conectar con MongoDB:', error);
  });

3. Definir un esquema y modelo con Mongoose

Con Mongoose, puedes definir un esquema y crear un modelo para interactuar con la base de datos. Un ejemplo sencillo es el siguiente:

// Definir un esquema para una colección "Usuarios"
const usuarioSchema = new mongoose.Schema({
  nombre: String,
  edad: Number,
  email: String
});

// Crear un modelo basado en el esquema
const Usuario = mongoose.model('Usuario', usuarioSchema);

// Crear y guardar un nuevo documento en la colección "Usuarios"
const nuevoUsuario = new Usuario({
  nombre: 'Juan',
  edad: 30,
  email: 'juan@example.com'
});

nuevoUsuario.save()
  .then(() => {
    console.log('Usuario guardado correctamente');
  })
  .catch((error) => {
    console.error('Error al guardar el usuario:', error);
  });

4. Ejecutar el código

Guarda el archivo y ejecútalo:

node app.js

Esto conectará con MongoDB y creará un nuevo documento en la colección Usuarios.

Referencia oficial

Para más detalles y opciones avanzadas, consulta la documentación oficial del driver de MongoDB para Node.js y la documentación de Mongoose.

Compartir:
Creado por:
Author photo

Jorge García

Fullstack developer