2013-01-05 41 views
2

一个嵌入文档我有一个类mongoengine更新在mongoengine

class Post(EmbeddedDocument): 
     uid = StringField(required=True) 
     text = StringField(required=True) 
     value = StringField() 

class Feed(Document): 
     label = StringField(required=True) 
     feed_url = StringField(required=True) 
     posts = ListField(EmbeddedDocumentField(Post)) 

我想更新的饲料(职位)一元 第一:我得到一个对象饲料

model = Feed.objects(_id="....").first() 

继续我要更新模型中的帖子有文本=“标题”。

我怎么用mongoengine做到这一点?由于

回答

2

我解决吧:)

Feed.objects(_id="...", posts__text="findvalue").update(set__posts__S__value="updatevalue") 
0

如果我理解这个问题,我觉得这样的事情会工作:

model = Feed.objects(_id="....").first() 
for post in model.posts: 
    if post.text == "title": 
     post.value = "placeholder for real update" 
model.save()