Удалите идентификатор объекта BSON при запросе базы данных mongo с помощью pymongo - PullRequest
0 голосов
/ 12 июня 2019

Я использую Pymongo и flask для создания API отдыха, и документы хранятся в следующем формате BSON:

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

как я могу запросить БД Mongo для получения документа в следующемотформатировать или преобразовать результат запроса в следующий формат?

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

Ответы [ 2 ]

2 голосов
/ 12 июня 2019

Вы можете применить str к вашему ObjectId:

item = {'_id': ObjectId('123'), 'title':"test"}
item['_id'] = str(item['_id'])
1 голос
/ 12 июня 2019

Я предполагаю, что вы хотите переименовать _id документа в коллекции.Это можно сделать, запросив коллекцию базы данных, а затем заменив документ в коллекции.

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

Надеюсь, это поможет.Если вы дадите мне больше информации о базе данных и коллекции, я могу помочь больше.

...