MongoDB-更新集合中的现有文档

时间:2018-08-08 08:09:54

标签: mongodb

我有一个名为user_roles的集合,它包含一个名为rights的字段,它是一个字符串数组。

我想通过在user_roles字段中添加新的字符串元素来更新_id = 5b1509f8b95b4bfe2b638508集合中具有rights的文档。

因此,基本上,在此更新集合之后,应包含附加元素"ui.dealers.measures.retrieve",如下所示。

{ 
    "_id" : ObjectId("5b1509f8b95b4bfe2b638508"), 
    "type" : "coach", 
    "name" : "Coach", 
    "flavours" : {
        "coach" : NumberInt(1)
    }, 
    "rights" : [
        "ui.dealers.retrieve", 
        "ui.dealers.dossier.retrieve", 
        "ui.dealers.dossier.update", 
        "ui.dealers.documents.retrieve", 
        "ui.dealers.documents.create", 
        "ui.dealers.documents.delete", 
        "ui.dealers.events.retrieve", 
        "ui.dealers.events.create", 
        "ui.dealers.events.update", 
        "ui.dealers.events.export", 
        "ui.dealers.events.delete", 
        "ui.dealers.kpis.retrieve", 
        "ui.dealers.kpis.update", 
        "ui.dealers.blueprints.retrieve", 
        "ui.dealers.blueprints.create", 
        "ui.dealers.gap.retrieve", 
        "ui.dealers.gap.update",
        "ui.dealers.measures.create", 
        "ui.dealers.surveys.retrieve", 
        "ui.dealers.surveys.update",
        "ui.dealers.measures.retrieve"
    ], 
    "createdAt" : ISODate("2018-06-04T09:44:24.394+0000"), 
    "updatedAt" : ISODate("2018-06-04T10:01:56.428+0000")
}

1 个答案:

答案 0 :(得分:1)

  

请尝试这个

db.collection.update({_id:ObjectId("5b1509f8b95b4bfe2b638508")},{
$push:{
  "rights":"ui.dealers.measures.retrieve"
}         
})