Python 无法对对象进行编码:pymongo.cursor.cursor对象位于
当抛出上述错误时,我试图检索存储在Python 无法对对象进行编码:pymongo.cursor.cursor对象位于,python,mongodb,flask,pymongo,Python,Mongodb,Flask,Pymongo,当抛出上述错误时,我试图检索存储在MongoDB中的音频文件 代码如下: elif json_data != None and 'retriever' in json_data: query_param = json_data['retriever'] data = db.soundData x = data.find({'name': query_param}) y = data.find({'data': x}) return Response(y,
MongoDB
中的音频文件
代码如下:
elif json_data != None and 'retriever' in json_data:
query_param = json_data['retriever']
data = db.soundData
x = data.find({'name': query_param})
y = data.find({'data': x})
return Response(y, mimetype='audio/mp3')
在name
下,我有文件名,data
下是音频文件本身。
由于我是pymongo的新手,有人能指出错误可能来自哪里吗?首先,您应该保存的是文件名,而文件本身最好在文件系统中保存
出现此错误的原因是,x和y实际上都是mongodb游标,而不是您期望的数据。你应该改用
find_one(filter=None,*args,**kwargs)从
数据库
find()的所有参数也是find_one()的有效参数,
尽管任何限制参数都将被忽略。返回单个
文档,如果找不到匹配的文档,则为无
您可以使用
y = data.find_one({'data': {'name': query_param}})
y = data.find_one({'data': {'name': query_param}})