【发布时间】:2019-06-13 04:42:05
【问题描述】:
我正在使用Pymongo和flask构建一个rest API,文档存储为以下BSON格式:
{'_id': ObjectId('123'), 'title':"test"}
如何查询Mongo DB获取以下格式的文档或将查询结果转换为以下格式?
{'_id':'123', 'title':"test"}
【问题讨论】:
标签: python mongodb pymongo pymongo-3.x
我正在使用Pymongo和flask构建一个rest API,文档存储为以下BSON格式:
{'_id': ObjectId('123'), 'title':"test"}
如何查询Mongo DB获取以下格式的文档或将查询结果转换为以下格式?
{'_id':'123', 'title':"test"}
【问题讨论】:
标签: python mongodb pymongo pymongo-3.x
您可以将str 申请到您的ObjectId:
item = {'_id': ObjectId('123'), 'title':"test"}
item['_id'] = str(item['_id'])
【讨论】:
MongoClient构造函数document_class参数更改文档使用的类型(默认为dict),但我不知道有什么方法可以更改特定的序列化字段。
我假设您希望重命名集合中文档的 _id。您可以通过查询数据库集合然后替换集合中的文档来做到这一点。
myquery = {'title':"test"}
# _ = col.find(myquery)
# To check if it exists
y = db['my collection'].update_one(myquery, {"$set": {'_id': '123'}})
希望对您有所帮助。如果您提供有关数据库和集合的更多信息,我可以提供更多帮助。
【讨论】:
{'_id':'123', 'title':"test"} 发送结果时将文档转换为正确的 JSON 格式