2012-03-30 44 views
0

我有以下架构中猫鼬/ Node.js的:用Mongoose/Node.js插入深层嵌入文档?

var ItemsSchema = new Schema({ 
    itemname: String, 
    quantity: String 
}); 

var ListSchema = new Schema({ 
    listname: String, 
    items: [ItemsSchema] 
}); 

var UsersSchema = new Schema ({  
    username: String, 
    owned: [ListSchema] 
}); 

因此每个用户都可以有很多解释。每个列表可以包含很多项目。 如何将新项目插入特定列表? 使用User.findOne({“owned._id”:listid} ...会给我拥有特定列表的用户,但我无法弄清楚如何继续获取单个列表。

谢谢在咨询!

回答

1

,你可以尝试这样做。

User.findById(id, function(err, doc){ 
    doc.owned[n].items.push(item); 
} 

任何用户有一个独立的列表,你必须访问的用户列表,并推动项目的具体名单。

的用户不要分享清单,当然没有这个结构的项目。

对不起,我的英语。

+0

谢谢!有效!我的背景是在关系数据库中,切换到nosql需要改变一下视角:) – 2012-04-02 20:04:57

+0

;)祝你好运!也许帮你这个http://www.mongodb.org/display/DOCS/Admin+UIs我使用MongoHub for mac,太棒了! – Donflopez 2012-04-03 10:49:59