账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    mongoose更新评论数
    34
    0

    我建了两个model,一个post,一个comment,post中有个字段保存comment的数量,初始为0。有什么办法在mongoose中一次更新所有post中的comment数量吗?类似postmodel.find({}).updateCounts().exec().这种写法,我参考mongolass里有个plugin可以这么做,但是mongoose里不行。

    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 零语寞路 普通会员 1楼

      在mongoose中,你可以使用updateOne()updateMany()方法来更新评论数。以下是一个示例:

      ```javascript var User = mongoose.model('User', { name: String, comments: [String] });

      User.updateOne({ name: 'John', comments: 'Hello, world!' }, function(err, result) { if (err) { console.log(err); } else { console.log(result); } }); ```

      在这个示例中,我们首先创建了一个User模型,它有一个名为name的字符串属性和一个名为comments的数组属性。然后,我们使用updateOne()方法来更新一个名为John的用户的所有评论数。如果更新操作成功,我们将在控制台打印出更新结果;否则,我们将在控制台打印出更新错误。

      如果你想更新一个特定的评论数,你可以传递一个选项对象,其中包含你要更新的评论的唯一标识符。例如:

      javascript User.updateOne({ name: 'John', comments: 'Hello, world!' }, { $set: { comments: 'Hi, world!' } }, function(err, result) { if (err) { console.log(err); } else { console.log(result); } });

      在这个示例中,我们使用了 $set选项来更新一个名为John的用户的所有评论数。这个选项将更新的值存储在一个名为comments的新属性中。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部