2017-08-03 42 views
0

假设我在数据库中有10个文档Item更新()函数在mongo中忽略limit()

允许使用limit()检索与某些条件匹配的Item的3个文档。

documents = Item.objects(somefield=somecondition).limit(3)

现在,如果我做

documents.update(),mongoengine更新由查询不只是3个文件我已经限制了我的查询相匹配的数据库中的所有文件。

我也尝试在参数中设置multi=False,但只有一个文档被更新。

有没有办法更新而查询自己,而不是逐个循环遍历文档?

回答

0

据我所知,MongoDB提供的问题没有可用的解决方案。然而,你可以尝试这样的事情

documents.forEach(
    function (e) { 
     e.field = 'value'; 
     db.collection.save(e); 
    } 
);