2012-03-30 4 views
0

У меня есть следующие Schemas в Mongoose/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} ... предоставит мне пользователя, который владеет конкретным списком, но я не могу понять, как это сделать, чтобы получить единственный список.

Thanks в совет!

ответ

1

вы можете попробовать сделать это.

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

Любой пользователь имеет независимый список, вы должны получить доступ к списку пользователей и нажмите элемент к определенному списку.

пользователям дону Не используйте этот список, конечно, элементы, не имеющие этой структуры.

Извините за мой английский.

+0

Спасибо! Это сработало! Мой фон находится в базах данных отношений и переключается на nosql, нужно какое-то изменение в перспективе :) –

+0

;) Удачи! Возможно, вам поможет этот http://www.mongodb.org/display/DOCS/Admin+UIs. Я использую MongoHub для Mac, это здорово! – Donflopez

Смежные вопросы