当我在更新查询后尝试更新用户文档的单个属性时,除了_id和updated属性之外,缺少用户的每个属性。我的查询出了什么问题?
dbwrapper.mongo.getConnection().then(function(db){
db.collection('users').update({'_id' : dbwrapper.mongo.ObjID(userID)}, {'iconID':2}, function(error, resultMongo){
console.log(error);
if(error || !resultMongo){
reject(error);
}else{
resolve(resultMongo);
}
});
});
答案 0 :(得分:2)
这就是更新如何与MongoDB一起使用:如果第二个(“更新”)文档只包含 字段:值表达式,那么存储在数据库中的文档将是更新文档替换。这是documented here。
如果您只想更新iconID
字段,请使用$set
:
.update({ '_id' : ... }, { $set : { iconID : 2 }}, ...)