Mongoose (v3.8) + Node.jsMongoose список ссылок заселить
У меня есть модель под названием 'Продукты', который имеет это поле:
upvoted_by: [{
user_id: { type: Schema.ObjectId, ref: 'Users' },
timestamp: { type: Date }
}]
И в Users
модель имеет кучу другие поля.
Чтобы добавить upvote, я делаю это:
product.upvoted_by.push({
user_id: req.user,
timestamp: new Date()
});
Я пытаюсь заполнить upvoted_by.user_id
поле так, что он содержит соответствующие пользовательские данные.
Я попробовал это, но это не похоже на работу:
// product (= a document) has been found before
product.populate('upvoted_by.user_id', {
select: 'username' // username is a field in the Users model
}, function(err, doc) {
console.log(JSON.stringify(doc));
});
Любая идея, что происходит не так и как это исправить?
мне пришлось изменить несколько вещей, но это достаточно близко! –
@ KaranGoel, дружелюбный FYI: если кто-то тратит время, чтобы помочь вам, но вы по существу публикуете небольшую настройку и соглашаетесь с тем, что в качестве ответа на их ответ (который действительно решает проблему) это не вдохновляет людей помочь вам (или другие) в будущем. –