no me funciona el controlador en express

Iniciado por Beginner Web, 14 Junio 2020, 02:20 AM

0 Miembros y 1 Visitante están viendo este tema.

Beginner Web

no me anda el buscar por id, borrar, y modificar

no se q pasa ayuda

Código (cpp) [Seleccionar]
const Asistente = require('../models/asistente');

const asistenteCtrl = {}

//Funciona
asistenteCtrl.createAsistente = async (req, res) => {
    const asistente = new Asistente (req.body);

    await asistente.save();
    res.json({
        'status': 'Asistente saved'
    });
}

asistenteCtrl.editAsistente = async (req, res) => {
    const asistente =  new Asistente (req.body);

    await Asistente.findByIdAndUpdate(req.params.id, {$set: asistente}, {new: true});
    res.json({
        'status': 'Asistente updated'
    })
}

asistenteCtrl.deleteAsistente = async (req, res)=>{
    await Asistente.findByIdAndRemove(req.params.id)
    res.json({
        status: 'Asistente removed'
    })
}

asistenteCtrl.getAsistente = async (req, res) => {
    const asistente = await Asistente.findById(req.params.id).populate("asistente");
    res.json(asistente);
}

//Funciona
asistenteCtrl.getAsistentes = async (req, res) => {
    asistentes = await Asistente.find().populate("asistente");
    res.json(asistentes);
}

module.exports = asistenteCtrl;
7w7

Beginner Web

7w7

MinusFour

Si fueras un poco más descriptiva acerca de porque dices que no funciona quizás te podríamos ayudar. Lo único que podemos ver son los middleware de express y que usas mongoose.

No sabemos nada de como estes utilizando Express o que estes enviando en tus peticiones.

[u]nsigned

#3
Como bien dice MinusFour deberias dar mas detalles. Para debuggear mejor tu código te recomiendo que lo metas dentro de bloques try/catch, por ejemplo:

Código (javascript) [Seleccionar]
asistenteCtrl.editAsistente = async (req, res) => {
    try {
        const asistente =  new Asistente (req.body);

        await Asistente.findByIdAndUpdate(req.params.id, {$set: asistente}, {new: true});
        res.json({
            'status': 'Asistente updated'
        })
    } catch (error) {
        console.error('ERROR asistenteCtrl.editAsistente:', error); //Mostrar el error por consola
        res.status(500).send({'error':'Internal Server Error'}); //Devolver un mensaje de error con Response Status 500
    }
}


Y si te animas lo mejor es usar el debugger de tu IDE, supongo que es Visual Studio Code, y asi te evitas tener que andar haciendo console.logs....

No hay atajo ante la duda, el misterio se hace aquí...
Se hace carne en cada uno, el misterio es existir!