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

MongoDB-更新集合中的现有文档,mongodb,Mongodb,我有一个名为user\u roles的集合,其中包含一个名为rights的字段,它是一个字符串数组 我想通过在权限字段中添加新的字符串元素来更新用户角色集合中id=5b1509f8b95b4bfe2b638508的文档 因此,基本上,在这个更新之后,集合应该包含额外的元素ui.deralers.measures.retrieve,如下所示 { "_id" : ObjectId("5b1509f8b95b4bfe2b638508"), "type" : "coach",

我有一个名为
user\u roles
的集合,其中包含一个名为
rights
的字段,它是一个字符串数组

我想通过在
权限
字段中添加新的字符串元素来更新
用户角色
集合中id=5b1509f8b95b4bfe2b638508的文档

因此,基本上,在这个更新之后,集合应该包含额外的元素ui.deralers.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")
}
请试试这个


@HadidAli您也可以提取该值,只需将$push关键字更改为$pull:)
db.collection.update({_id:ObjectId("5b1509f8b95b4bfe2b638508")},{
$push:{
  "rights":"ui.dealers.measures.retrieve"
}         
})