Pymongo - 从数组中删除一个元素

时间:2015-12-17 11:24:12

标签: python arrays mongodb mongodb-query pymongo

我正在尝试从数组中删除元素:

{ "_id" : ObjectId("56728dac7e30ad640af52a88"), "key" : "inbox", "notify" : false, "unread" : [ "5" ], "user" : "admin" }

我尝试使用此查询mgr.db.update_one({"key":"inbox","user":"admin"},{"$pull":{"unread.5":""}})以及mgr.db.update_one({"key":"inbox","user":"admin"},{"$pull":{"unread":{"5":""}}),两者都不会从数组中删除该元素。我怎样才能做到这一点?

1 个答案:

答案 0 :(得分:0)

  

$pull运算符的格式为:

     

{ $pull: { <field1>: <value|condition>, <field2>: <value|condition>, ... } }

这意味着正确的查询是:

mgr.db.collection.updateOne(
    { "key": "inbox", "user": "admin"},
    { "$pull": { "unread": "5" } }
)