findById и findByIdAndUpdate в той же функции - PullRequest
0 голосов
/ 20 апреля 2020

Я пытаюсь обновить две вещи, корзину и базу данных с помощью одной формы (нажатие кнопки). Первый раздел кода работает за исключением того, что я хочу использовать переменную reduceStock в Product.findByIdAndUpdate. Возможно ли это?

    router.get('/add-to-cart/:id', function(req, res, next){
        var productId = req.params.id;
        var cart = new Cart(req.session.cart ? req.session.cart : {});
        var size = req.query.bikeSize 
        Product.findById(productId, function(err, product){
            if(err){
                // !!!!add an error message!!!!
                return res.redirect('/');
            }
            var reduceStock = product.productStock - 1; <-----------
            console.log(reduceStock)
            cart.add(product, product.id, size);
            req.session.cart = cart;
            console.log(req.session.cart);
            res.redirect('/');

        });
    });
...