使用Mongoose / Node.js插入深度嵌入文档?

时间:2012-03-30 10:38:31

标签: node.js mongoose

我在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 个答案:

答案 0 :(得分:1)

你可以尝试这样做。

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

任何用户都有一个独立的列表,您必须访问用户列表并将项目推送到特定列表。

用户不共享列表,当然也不包含此结构的项目。

对不起我的英语。