如何使用 txMongo insert_many 避免重复键?

How to insert_many with txMongo avoiding duplicated keys?

我试图在 MongoDB 中插入文档列表,每个文档都有字段“_id”。所以当我发送这样的列表时

[{"_id":"2"}, {"_id":"1"}, {"_id":"3"}]

并且至少有一个 _id 已经在数据库中,它显示 pymongo.errors.DuplicateKeyError

我需要使用 insert_many 或任何类似的功能,当我使用它时,它 return 给我一个列表,其中包含未插入的 ID 或已插入的 ID。

我看到insert_many一个一个插入,发现异常就停止,不插入剩下的文件

你知道我可以使用的 txMongo 的任何替代方案吗?它可以插入所有文档,而 return 我无法插入的文档?

我不想一一插入,因为我可能会发送一个巨大的列表。

这可能对您有帮助:

Performing Unordered Insert in MongoDB using PyMongo

只需将 unordered 属性设置为 false。同样可见here