我正在尝试使用$inc更新我的用户模型的值,但当我这样做时,我会出现以下错误:
There was an errorCastError: Cast to Number failed for value "NaN" at path "paymentDue"
这是我正在做的
User.findOneAndUpdate(
{ _id: req.body.userID },
{
$push: { orders: req.body.orderID },
$inc: { paymentDue: order.quantity * req.body.price },
},
(error) => {
if (!error) {
res.redirect("/admin/orders");
} else {
res.send("There was an error" + error);
}
}
);
首先,确保将paymentValue
字段的默认值设置为0
。如果已经设置,则order.quantity
或req.body.price
中的任何一个都是undefined
。如果将一个数字与undefined
相乘,结果将是NaN
。您需要检查这些值。