繁体   English   中英

使用mongoDb + nodeJs更新嵌套文档

[英]updating nested document with mongoDb + nodeJs

我有这样的结构:

{
    "_id" : ObjectId("501abaa341021dc3a1d0c70c"),
    "name" : "prova",
    "idDj" : "1",
    "list" : [
        {
            "id" : 1,
            "votes" : 2
        },
        {
            "id" : 2,
            "votes" : 4
        }
    ]
}

我正在尝试通过此查询增加投票:

session_collection.update(
 {'_id':session_collection.db.bson_serializer.ObjectID.createFromHexString(idSession),'list.id':idSong},
 {$inc:{'list.$.votes':1}},
 {safe: true} ,
 callback);

但这是行不通的,没有任何问题,只是没有更新任何内容。

我认为这是因为'list.id'和'list。$。votes'上的['](简单引号)是因为终端内的同一查询工作正常。

谢谢!

我怀疑您的匹配项没有按预期工作。 回调将返回

函数(err,numberofItemsUpdated,wholeUpdateObject)

如果匹配成功,numberofItemsUpdated应该等于1。 您需要检查idSession和idSong是否是您认为的样子。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM