2017-03-06 46 views
0

我想使用燒瓶和Mongoengine刪除一個特定'_id'的嵌入文檔。 文件有這樣的結構:使用mongoengine和燒瓶刪除嵌入的文檔

class Main(db.Document): 
    title = db.StringField(max_length=156, required = True) 
    press = db.ListField(db.EmbeddedDocumentField(Press)) 

class Press(db.EmbeddedDocument): 
_id= db.StringField() 
date = db.DateTimeField(default = datetime.utcnow()) 
url = db.URLField() 
title = db.StringField() 
description = db.StringField() 
site_name = db.StringField() 
url_image = db.StringField() 
author = db.StringField() 

我嘗試使用:

m. = Main.objects.get_or_404(slug= request.form['slug']) 
m.update_one(unset__press({'_id': request.form['_id']})) 

從HTML表單的Request.Form cotaind數據格式正確無誤。

但沒有工作! 任何建議? 謝謝。

回答

0

我認爲您正在尋找$pull運營商。嘗試:

m.update_one(pull__press___id=request.form['_id']) 
+0

已解決!我用那個:\t \t m.update(pull__press ___ id = request.form ['_ id']) – Mauro

0

解決! m.update(pull__press ___ id = request.form ['_ id'])