我试图让 pymongo 插入具有字符串格式 ID 而不是 ObjectId 的新文档。我正在构建的应用程序集成了meteor和python,并且meteor插入了字符串id,因此必须同时使用字符串和Objectid会增加复杂性。
示例:
插入 meteor 的文档:
{
"_id" : "22FHWpvqrAeyfvh7B"
}
Pymongo 插入的文档:
{
"_id" : ObjectId("5880387d1fd21c2dc66e9b7d")
}
最佳答案
您只需切换 Meteor 应用程序以插入 ObjectId 而不是字符串。只需使用 idGeneration
选项属性并将值设置为 MONGO
。
这是一个示例。
var todos = new Mongo.Collection('todos', {
idGeneration: 'MONGO'
});
Meteor 文档 here 中对此进行了描述.
或者,如果您希望 Meteir 保留字符串并且无法弄清楚如何配置 Pymongo 以存储为字符串,那么您可以执行描述的方法 here在 Pymongo 中的 ObjectId 和字符串之间进行转换..
关于python - Pymongo 使用字符串 ID 而不是 ObjectID 插入文档,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43018573/