【发布时间】:2017-07-03 15:41:38
【问题描述】:
没有看到这个确切的问题发布,所以如果它存在,请随时指出它。我也是 mongo 的新手,所以我的措辞可能很奇怪。
我有一个文档集合,它最终会变得非常大。我已经设置好让文档有一个 ImageField。我想返回完整的文档以及填充为文件的 ImageField 缩略图,以便我可以在我的 html5/javascript 前端显示它。
在 SQL 中,这将通过列选择器和连接来完成。
看这里:
from flask_mongoengine import MongoEngine
import datetime
db = MongoEngine()
class img_audit(db.Document):
request_image = db.ImageField(size=(1920, 1080, True), thumbnail_size=(100, 100, True))
processed_date = db.DateTimeField(default=datetime.datetime.utcnow)
state = db.StringField()
city = db.StringField()
查询:
form = request.form
dpage = form['page']
perpage = form['perpage']
pag_audits = img_audit.objects.paginate(page=int(dpage), per_page=int(perpage))
pag_res = []
for item in pag_audits.items:
pag_res.append(item.to_json())
return jsonify({'audits' : pag_res})
目前,查询只是返回 ImageField 的 _oid,就好像它是一个嵌套文档一样。我怎样才能只获取缩略图并一次性返回所有这些?
在用户界面,当用户点击缩略图时,我会做一个获取高清图片的请求。
感谢任何提示!
-------更新1--------------
尝试了以下方法:
pag_audits = img_audit.objects.only('processed_date', 'state', 'city', 'request_image.thumbnail').paginate(page=int(dpage), per_page=int(perpage))
收到以下错误: mongoengine.errors.LookUpError:无法解析字段 request_image 上的子字段或操作员缩略图
【问题讨论】: