如何使用Python在MongoDB中删除此文档中的值
我有一份这样的文件如何使用Python在MongoDB中删除此文档中的值,python,django,mongodb,Python,Django,Mongodb,我有一份这样的文件 { "_id" : ObjectId("564c0cb748f9fa2c8cdeb20f"), "username" : "blah", "useremail" : "blah@blahblah.com", "groupTypeCustomer" : true, "addedpartners" : [ "562f1a629410d3271ba74f74", "562f1a6f9410d3271ba74f8
{
"_id" : ObjectId("564c0cb748f9fa2c8cdeb20f"),
"username" : "blah",
"useremail" : "blah@blahblah.com",
"groupTypeCustomer" : true,
"addedpartners" : [
"562f1a629410d3271ba74f74",
"562f1a6f9410d3271ba74f83"
],
"groupName" : "Mojito",
"groupTypeSupplier" : false,
"groupDescription" : "A group for fashion designers"
}
现在我想从这个“addedpartners
”数组中删除一个值并更新文档。
我只想从addedpartners
数组中删除562f1a6f9410d3271ba74f83
这是我之前试过的
db.myCollection.update({'_id':'564c0cb748f9fa2c8cdeb20f'},{'$pull':{'addedpartners':'562f1a6f9410d3271ba74f83'}})
试试这个
db.myCollection.update({}, {$unset : {"addedpartners.1" : 1 }})
db.myCollection.update({}, {$pull : {"addedpartners" : null}})
无法直接删除数组,我认为这会起作用,我还没有尝试过。Soni,您的答案是正确的,但在python中似乎返回空值!我也尝试过,但是您的查询会对所有文档进行更改。在不知道其结果的情况下,首先不应使用{}。请将_id和addedpartners值放在引号中,然后它将在ind query中为该查询对象工作吗?我觉得你的问题出了点问题
db.myCollection.update({}, {$unset : {"addedpartners.1" : 1 }})
db.myCollection.update({}, {$pull : {"addedpartners" : null}})