当引发上述错误时,我试图检索存储在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,有人能指出错误可能来自哪里吗?
发布于 2017-06-05 22:51:53
首先,您应该保存的是文件名,而文件本身在文件系统上更好。
出现此错误是因为x和y实际上都是mongodb游标,而不是您所期望的数据。您应该使用一代替。
find_one(filter=None,*args,**kwargs)从数据库中获取一个文档。 要查找()的所有参数也是find_one()的有效参数,尽管任何限制参数都将被忽略。返回单个文档,如果没有找到匹配的文档,则返回零。
y = data.find_one({'data': x})您可以通过以下方法使代码更加简洁
y = data.find_one({'data': {'name': query_param}})https://stackoverflow.com/questions/44378828
复制相似问题