Portada de libro electrónico gratuitaCómo crear API en NodeJS desde básico hasta avanzado

Cómo crear API en NodeJS desde básico hasta avanzado

Nuevo curso

149 páginas

Creando un CRUD con NodeJS y MongoDB: Implementando funciones para crear, leer, actualizar y eliminar datos

Capítulo 92

Tiempo estimado de lectura: 4 minutos

Audio Icon

Escuchar en audio

0:00 / 0:00

16.8. Creando un CRUD con NodeJS y MongoDB: Implementación de funciones para crear, leer, actualizar y eliminar datos

Para los desarrolladores de software, la capacidad de crear, leer, actualizar y eliminar datos (CRUD) es una habilidad esencial. En el contexto de nuestro curso de libro electrónico sobre cómo crear API en NodeJS, ahora nos centraremos en cómo implementar estas operaciones utilizando NodeJS y MongoDB.

Configuración del entorno

Antes de comenzar, es importante asegurarse de tener el entorno de desarrollo adecuado. Necesitará NodeJS y MongoDB instalados en su sistema. Además, usaremos Express, un framework para NodeJS, y Mongoose, un ORM (Object Relational Mapping) para MongoDB.

Creando el modelo de datos

Primero, necesitamos definir nuestro modelo de datos. Supongamos que estamos creando una API para una aplicación de blog. Entonces nuestro modelo de datos podría ser una 'Publicación', con propiedades como 'título', 'contenido' y 'autor'. Usando Mongoose, podemos definir este modelo así:

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

const PostSchema = nuevo esquema({
    título: cadena,
    contenido: cadena,
    autor: cadena
});

módulo.exportaciones = mangosta.model('Publicar', PostSchema);

Implementación de operaciones CRUD

Crear

Comencemos con la operación 'Crear'. Usaremos la ruta POST para esto. A continuación se muestra un ejemplo de cómo se puede hacer esto:

const expresar = requerir('expresar');
enrutador constante = express.Router();
const Publicación = require('../modelos/Publicación');

enrutador.post('/', async (req, res) => {
    publicación constante = nueva publicación ({
        título: req.body.title,
        contenido: req.body.content,
        autor: req.body.autor
    });

    intentar {
        const savePost = espera post.save();
        res.json (publicación guardada);
    } atrapar (errar) {
        res.json({ mensaje: err });
    }
});

Leer (Leer)

A continuación, implementemos la operación 'Leer'. Usaremos la ruta GET para esto. A continuación se muestra un ejemplo de cómo leer todas las publicaciones y una publicación específica:

Continúa en nuestra aplicación.

Podrás escuchar el audiolibro con la pantalla apagada, recibir un certificado gratuito para este curso y además tener acceso a otros 5.000 cursos online gratuitos.

O continúa leyendo más abajo...
Download App

Descargar la aplicación

// Obtener todas las publicaciones
enrutador.get('/', async (req, res) => {
    intentar {
        publicaciones constantes = esperar Post.find();
        res.json (publicaciones);
    } atrapar (errar) {
        res.json({ mensaje: err });
    }
});

// Obtener publicación específica
router.get('/:postId', async (req, res) => {
    intentar {
        publicación constante = espera Post.findById(req.params.postId);
        res.json(publicación);
    } atrapar (errar) {
        res.json({ mensaje: err });
    }
});

Actualizar

Ahora, implementemos la operación 'Actualizar'. Usaremos la ruta PATCH para esto. A continuación se muestra un ejemplo de cómo actualizar una publicación específica:

router.patch('/:postId', async (req, res) => {
    intentar {
        const updatePost = esperar Post.updateOne(
            { _id: req.params.postId },
            { $conjunto: { título: req.body.title, contenido: req.body.content, autor: req.body.author } }
        );
        res.json(publicación actualizada);
    } atrapar (errar) {
        res.json({ mensaje: err });
    }
});

Eliminar (Eliminar)

Finalmente, implementemos la operación 'Eliminar'. Usaremos la ruta ELIMINAR para esto. A continuación se muestra un ejemplo de cómo eliminar una publicación específica:

router.delete('/:postId', async (req, res) => {
    intentar {
        const removePost = await Post.remove({ _id: req.params.postId });
        res.json(publicación eliminada);
    } atrapar (errar) {
        res.json({ mensaje: err });
    }
});

Conclusión

Con eso, completamos la implementación de operaciones CRUD usando NodeJS y MongoDB. La belleza de NodeJS es su simplicidad y eficiencia, y con la ayuda de paquetes como Express y Mongoose, podemos crear API potentes y escalables. Recuerda, la práctica hace la perfección, así que sigue practicando y experimentando.

Ahora responde el ejercicio sobre el contenido:

En el contexto del curso de libro electrónico presentado en el texto, ¿cuál es el propósito de las funciones para crear, leer, actualizar y eliminar datos en NodeJS y MongoDB?

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

¡Tú error! Inténtalo de nuevo.

Siguiente capítulo

Creando un CRUD con NodeJS y MongoDB: Validación de datos recibidos

Arrow Right Icon
Descarga la aplicación para obtener una certificación gratuita y escuchar cursos en segundo plano, incluso con la pantalla apagada.