Este capítulo de nuestro libro electrónico está dedicado a un aspecto fundamental del desarrollo de API con NodeJS: crear un CRUD (Crear, Leer, Actualizar, Eliminar) utilizando MongoDB como base de datos. Cubramos paso a paso cómo crear, leer, actualizar y eliminar datos en una base de datos MongoDB usando NodeJS.

Antes de comenzar, es importante comprender qué es MongoDB. MongoDB es una base de datos orientada a documentos que almacena datos en documentos BSON, una representación binaria de JSON. Esto lo hace muy flexible y escalable, perfecto para trabajar con NodeJS.

Configuración del entorno

Primero, necesitamos instalar NodeJS y MongoDB en nuestro sistema. Una vez instalado, creemos un nuevo proyecto NodeJS e instalemos algunas dependencias. Usaremos 'Express' para crear el servidor, 'mongoose' para interactuar con MongoDB y 'body-parser' para analizar el cuerpo de las solicitudes HTTP.

$npm inicio
$ npm instala el analizador de cuerpo de mangosta express

Después de instalar estas dependencias, configuremos nuestro servidor Express y conectemos a MongoDB usando Mongoose.

const expresar = requerir('expresar');
const mangosta = require('mangosta');
const bodyParser = require('body-parser');

aplicación constante = expresar();

mongoose.connect('mongodb://localhost/crud-nodejs-mongodb', {useNewUrlParser: verdadero, useUnifiedTopology: verdadero});

aplicación.use(bodyParser.json());
app.listen(3000, () => console.log('Servidor ejecutándose en el puerto 3000'));

Creando el modelo de datos

Antes de que podamos trabajar con nuestros datos, necesitamos definir un modelo de datos. Creemos una plantilla de 'Usuario' con los campos 'nombre' y 'correo electrónico'.

const mangosta = require('mangosta');
const Esquema = mangosta.Esquema;

const UserSchema = nuevo esquema({
  nombre: cadena,
  correo electrónico: cadena
});

module.exports = mongoose.model('Usuario', UserSchema);

Creación de rutas CRUD

Ahora que tenemos nuestro modelo de datos, podemos crear nuestras rutas CRUD. Creemos un archivo 'routes.js' e importemos nuestro modelo 'Usuario'.

const expresar = requerir('expresar');
const Usuario = require('./models/Usuario');
enrutador constante = express.Router();

Comencemos con la ruta 'Crear'. Esta ruta recibirá una solicitud POST con los datos del usuario y creará un nuevo usuario en la base de datos.

router.post('/usuarios', async (req, res) => {
  usuario constante = nuevo usuario (req.body);
  esperar usuario.save();
  res.json({estado: 'Usuario creado'});
});

La ruta 'Leer' buscará todos los usuarios de la base de datos y devolverá una respuesta JSON con los datos del usuario.

router.get('/usuarios', async (req, res) => {
  usuarios constantes = espera Usuario.find();
  res.json(usuarios);
});

La ruta 'Actualizar' recibirá una solicitud PUT con el ID de usuario y los datos del nuevo usuario. Encontrará al usuario en la base de datos y actualizará sus datos.

router.put('/usuarios/:id', async (req, res) => {
  espere User.findByIdAndUpdate(req.params.id, req.body);
  res.json({estado: 'Usuario actualizado'});
});

Finalmente, la ruta 'Eliminar' recibirá una solicitud ELIMINAR con el ID de usuario. Encontrará al usuario en la base de datos y lo eliminará.

router.delete('/usuarios/:id', async (req, res) => {
  espere User.findByIdAndRemove(req.params.id);
  res.json({estado: 'Usuario eliminado'});
});

Con eso, tenemos un CRUD completo con NodeJS y MongoDB. Este es un ejemplo básico, pero puede ampliarlo para adaptarlo a sus necesidades. Esperamos que este capítulo te haya resultado útil para aprender a crear un CRUD con NodeJS y MongoDB.

Ahora responde el ejercicio sobre el contenido:

¿Cuál es el propósito de CRUD en el desarrollo de API con NodeJS y MongoDB?

¡Tienes razón! Felicitaciones, ahora pasa a la página siguiente.

¡Tú error! Inténtalo de nuevo.

Imagen del artículo Creando un CRUD con NodeJS y MongoDB: Instalación de NodeJS

Siguiente página del libro electrónico gratuito:

85Creando un CRUD con NodeJS y MongoDB: Instalación de NodeJS

4 minutos

¡Obtén tu certificado para este curso gratis! descargando la aplicación Cursa y leyendo el libro electrónico allí. ¡Disponible en Google Play o App Store!

Disponible en Google Play Disponible en App Store

+ 6,5 millones
estudiantes

Certificado gratuito y
válido con código QR

48 mil ejercicios
gratis

Calificación de 4.8/5
en tiendas de aplicaciones

Cursos gratuitos de
vídeo, audio y texto.