【问题标题】:Arithmetic Operations in mongoDB using node.js使用 node.js 在 mongoDB 中进行算术运算
【发布时间】:2017-02-09 18:14:59
【问题描述】:

我正在尝试使用 node.js 为 REST API 更新 mongoDB 数据库中的内容。我尝试使用 $add、$inc、$dec 等 mongoose 函数。但它给了我一个错误,说“未知修饰符

以下是调用函数的代码部分: 我从控制台、日志语句中得到了正确的输出。

哪里出错了?

【问题讨论】:

    标签: node.js mongodb rest api mongoose


    【解决方案1】:

    $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));
    })
    

    【讨论】:

    • 感谢 Puneet,但我也尝试过,但遇到了类似的错误。另外请告诉我一件事,如何将 json 对象数量转换为整数?我也遇到了这个错误
    • @NimitBedi 我已经在我的 mongodb 中检查了上面的代码,它工作得非常好。您使用哪个 npm 模块在 node.js 中运行 mongodb 查询?我在客户端使用猫鼬
    • 我也在用猫鼬。我会再检查一次。谢谢,关于其他问题的任何想法?
    • 抱歉,我无法正确获取您的第二个查询。请更新您的问题并提及您遇到问题的代码。那我可以帮你。
    • 在增量和减量中都使用 $inc,$dec 不是 mongodb 运算符。一旦它适合你,请标记答案正确。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-07-07
    • 2021-11-18
    • 2021-05-26
    • 2019-04-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多