使用pymongo查询mongo DB时删除BSON对象ID

时间:2019-06-12 02:38:07

标签: python mongodb pymongo pymongo-3.x

我正在使用Pymongo和flask构建一个Rest API,文档以以下BSON格式存储:

{'_id': ObjectId('123'), 'title':"test"}

如何查询Mongo数据库以获取以下格式的文档或将查询结果转换为以下格式?

{'_id':'123', 'title':"test"}

2 个答案:

答案 0 :(得分:2)

您可以将str应用于您的ObjectId

item = {'_id': ObjectId('123'), 'title':"test"}
item['_id'] = str(item['_id'])

答案 1 :(得分:1)

我假设您希望重命名集合中文档的_id。您可以通过查询数据库集合,然后替换集合中的文档来完成此操作。

myquery = {'title':"test"}
# _ = col.find(myquery)
# To check if it exists
y = db['my collection'].update_one(myquery, {"$set": {'_id': '123'}})

希望有帮助。如果您给我更多有关数据库和集合的信息,我可以提供更多帮助。