Python 无法在PyMongo中更新文档

Python 无法在PyMongo中更新文档,python,pymongo,Python,Pymongo,我有类似Python/PyMongo的代码(代码应该模拟内部连接和第二个集合中的所有文档,将它们放入列表中(嵌套在内部),并添加到Mongo中的第一个适当文档中)。其思想是加载两个集合并传递两个字段(用于连接的字段的名称)和第二个集合中具有相同属性的所有文档,就像第一个放入列表中一样,并添加到第一个集合中的相应文档中 (例如,在第一个集合中,我有文件名为“国家”、“人口”的文档,在第二个集合中,我有“国家”和“汽车工厂”的文档,我想为相应的国家列出(非规范化)所有工厂的第一个集合列表)

我有类似Python/PyMongo的代码(代码应该模拟内部连接和第二个集合中的所有文档,将它们放入列表中(嵌套在内部),并添加到Mongo中的第一个适当文档中)。其思想是加载两个集合并传递两个字段(用于连接的字段的名称)和第二个集合中具有相同属性的所有文档,就像第一个放入列表中一样,并添加到第一个集合中的相应文档中

(例如,在第一个集合中,我有文件名为“国家”、“人口”的文档,在第二个集合中,我有“国家”和“汽车工厂”的文档,我想为相应的国家列出(非规范化)所有工厂的第一个集合列表)

    for f in first_collection_records:
        temp=[]
        id=f['_id']
        second_collection_records.rewind()
        for s in second_collection_records:
            if f[field_one]==s[field_two]:
                temp.append(s)
        f[self.__second_collection_name__]=temp
        first_collection_records.update({"_id":id}, f, safe=True)

但我得到错误“Cursor”对象没有属性“update”。我做错了什么?

第一个集合记录是一个
pymongo.cursor.cursor
对象。这是调用db.first\u collection.find()时得到的结果。
。您需要对原始
集合
对象调用
更新

# assuming your query looked something like this
first_collection_records = db.first_collection.find()

# your code here....

# your last line should reference the collection object to do the update
db.first_collection.update({"_id":id}, f, safe=True)

你能更具体地说明你想要实现什么吗?您想更新哪些内容?你说的.update({“\u id”:id},f,safe=True)是什么意思?@EWYNY我添加了新的评论,你现在能帮我吗