我正在为我的Python应用程序设置MongoDB,代码如下:
@app.route('/user/<firstName>', methods=['GET'])
def getUser(firstName):
print(firstName)
return jsonify({'users': Users.find({'first_name': firstName})[0]})
引发以下错误:TypeError:ObjectId类型的对象不可JSON序列化由于_id
字段为'_id':ObjectId('5e8676dc0d16f3567167d889'(。
我该如何解决这个问题?
在某个地方找到了这段代码,现在它正在工作。*如果有人知道这是从哪里来的,请标记。
class JSONEncoder(json.JSONEncoder):
''' extend json-encoder class'''
def default(self, o):
if isinstance(o, ObjectId):
return str(o)
if isinstance(o, datetime.datetime):
return str(o)
return json.JSONEncoder.default(self, o)
# use the modified encoder class to handle ObjectId & datetime object while jsonifying the response.
app.json_encoder = JSONEncoder