Mongoose connect two collections

浪尽此生 提交于 2019-12-02 10:58:48

I solved it in the following way. In the function to create the stock, I look for the related product and execute a push:

app.post('/', mdAuth.verifyToken, (req, res)=>{

    var body = req.body;

    var repo = new Repo ({
        restock: body.restock,
        date: body.date,
        producto: body.producto,
        usuario: req.usuario._id
    });

    repo.save( (err, repoGuardado)=>{
        if (err) {
            return res.status(400).json({
                ok: false,
                mensaje: 'Error al crear repo',
                errors: err
            });
        } 

        res.status(201).json({
            ok: true,
            repo: repoGuardado
        });

        /* actuializar repo en producto */
        var id = body.producto;

        Producto.findById( id, (err, producto)=> {

            if (err) {
                return res.status(500).json({
                    ok: false,
                    mensaje: 'Error al buscar producto',
                    errors: err
                });
            }

            if (!producto) {
                return res.status(400).json({
                    ok: false,
                    mensaje: 'No existe un producto con ese ID',
                    errors: { message: 'No existe un producto con ese ID' }
                });
            }

            producto.repo.push(repo);
            producto.save();


        }); /* end producto find */

    });
});
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!