我有一个 mongo 文件:
{ "_id" : 0, "name" : "Vasya", "fav" : [ { "type" : "t1", "weight" : 1.4163 }, { "type" : "t2", "weight" : 11.7772 }, { "type" : "t2", "weight" : 6.4615 }, { "type" : "homework", "score" : 35.8742 } ] }
对于删除数组“fav”中的最低元素,我使用以下 Python 代码:
db.people.update({"fav":{"type":"t2", "weight":lowest}}, {"$pull":{"fav"{"type":"t2", "weight":lowest}}})
其中变量lowest
是 6.4615 和 35.8742 之间的最小值。
问题是这段代码什么都不做。没有错误,并且值不会从数组中删除。但是如果我在 mongo shell 中编写相同的代码,结果是肯定的。
不幸的是,我在 pymongo 和 mongo 的经验不是很好。因此,如果有人知道问题所在,那就太好了。