2017-07-03 45 views
0

沒有看到這個確切的問題發佈,所以隨時指出它,如果它存在。我也是mongo的新手,所以我的言論可能很奇怪。燒瓶MongoEngine帶圖像字段的分頁文檔

我有一個文檔集合,最終會變得非常大。我已經設置好這個文件有一個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

回答

0

我最終只使用Mongo作爲鍵/值和Azure Blob存儲來存儲文件。由於各種原因,從成本到內容交付和擴展能力,這最終成爲更好的解決方案。