更新集合MongoDB中的每个元素

时间:2012-05-31 03:54:08

标签: python mongodb pymongo updating

我正在尝试一次更新一个集合的每个元素。我的伪代码是:

for e in myColl.find():
    # ...calculations involving variables of 'e'
    myColl.update({'_id':e['_id']}, { '$set': {'myvar':123}})

其中myvar是添加到e的新变量。

此更新导致集合中完全没有变化。

我想这是因为光标已经在myColl循环,因此无法在集合内部更新,但我不知道如何绕过它。

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

for row in myColl.find():
    row['myvar'] = 123
    myColl.save(row)