假设我在数据库中有10个Item
文档。
让我们使用limit()检索3个符合某些条件的Item文档。
documents = Item.objects(somefield=somecondition).limit(3)
现在,如果我这样做
documents.update()
,mongoengine更新了查询所匹配的数据库中的所有文档,而不仅仅是我限制查询的3个文档。
我也尝试在参数中设置multi=False
,但只有一个文档得到更新。
无论如何都要在查询时进行更新,而不是逐个循环遍历文档?
答案 0 :(得分:0)
据我所知,MongoDB提供的问题没有可用的解决方案。但是你可以试试这样的东西
documents.forEach(
function (e) {
e.field = 'value';
db.collection.save(e);
}
);