2017-03-06 4 views
0

플라스크와 몽고 엔진을 사용하여 특정 '_id'가 포함 된 임베디드 문서를 삭제하고 싶습니다.몽고와 플라스크를 사용하여 임베디드 문서 삭제

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() 

내가 사용하려고 : html로 양식에서

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

는 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'])