更新mongoDB:减量

5m1hhzi4  于 2023-02-15  发布在  Go
关注(0)|答案(1)|浏览(110)
router.put('/:id', (req, res) => {
    Bike.update({
        _id: req.params.id,
        quantity: { $gt: 0},
    }, {
        $inc: {
            quantity: -1
        }
    })
    res.redirect('/products');
});

我想在用户选择“add to cart”按钮后减少这辆自行车的数量。我的类的文档建议提交一个包含架构中每个属性的表单。除了数量会减少之外,每个属性都保持不变。我尝试了这种方法,但没有成功。下面是一个链接,指向我查找的解决方案,该解决方案涉及运行与我上面添加的代码类似的代码:
Decrementing a field of type number in mongodb and nodejs
但是,使用此解决方案时数量也不会减少

sgtfey8w

sgtfey8w1#

req.params.id 是一个字符串,用于将对象与MongoDB中的字符串进行比较,您应该编写. includes。

router.put('/:id', (req, res) => {
    Bike.update({
        _id.includes(req.params.id),
        quantity: { $gt: 0},
    }, {
        $inc: {
            quantity: -1
        }
    })
    res.redirect('/products');
});

相关问题