1

我很难尝试使用 MongoSkin 将值增加一个。

var client = mongoskin.db( // mongodb://server/database?options
    'mongodb://localhost/database?auto_reconnect=true&poolSize=1',
    {safe: true}
);

我将以下对象(文档)添加到我的数据库中 - 我已验证该对象在数据库中并且可以使用 $set 进行更新。

{登录计数:0}

当我尝试更新 loginCount 时,没有任何反应。

client.collection("user").findOne(user_id.toString(), 
    {$set: { $inc: { loginCount: 1 }}}, function (err, data) {});
4

1 回答 1

0

我已经解决了这个问题:

client.collection("users").updateById(
  user_id.toString(),
  $inc: {loginCount: 1},
  $set: {anotherfield: anothervalue},
  function (err) {
    // handle error here
  }
}

$set 运算符独立于 $inc 运算符使用。似乎 $inc, 将增加并设置值。

于 2013-04-12T05:08:34.027 回答