【发布时间】:2017-02-09 18:14:59
【问题描述】:
我正在尝试使用 node.js 为 REST API 更新 mongoDB 数据库中的内容。我尝试使用 $add、$inc、$dec 等 mongoose 函数。但它给了我一个错误,说“未知修饰符”
以下是调用函数的代码部分: 我从控制台、日志语句中得到了正确的输出。
哪里出错了?
【问题讨论】:
标签: node.js mongodb rest api mongoose
我正在尝试使用 node.js 为 REST API 更新 mongoDB 数据库中的内容。我尝试使用 $add、$inc、$dec 等 mongoose 函数。但它给了我一个错误,说“未知修饰符”
以下是调用函数的代码部分: 我从控制台、日志语句中得到了正确的输出。
哪里出错了?
【问题讨论】:
标签: node.js mongodb rest api mongoose
$add 是聚合操作符,不是普通操作符
https://docs.mongodb.com/manual/reference/operator/aggregation/add/
所以使用 $inc 而不是 $add,它可以同时处理负值和正值。
admin.update({"username": donar}, {$inc: {"amount": -amount}},
function (err, doc){
if (err) throw err;
else (res.json(doc));
})
customer.update({"username": recepient}, {$inc: {"amount":amount}},
function (err, doc){
if (err) throw err;
else (res.json(doc));
})
【讨论】: