С схемойPopulate ограниченного количества элементов в массиве, но сохранить размер массива - мангуст
var CommentSchema = new Schema({
text: { type: String },
replies: [{ type: mongoose.Schema.ObjectId, ref: 'Comment' }]
});
У меня есть запрос, как
Comment.findById(req.params.id)
.populate({
path: 'replies',
model: 'Comment',
options: {
limit: 2
}
})
.exec(...)
Теперь я не вижу варианта не заполнить ограниченное число элементов в массиве и сохраняют длину массива.
Я думал о заселении в другое «целевое» поле, так что исходный массив ответов остается нетронутым (и, следовательно, информацией о количестве ответов). Но я думаю, что этот вариант не существует в mongoose populate().
прецедент можно посмотреть по телефону Youtube комментарии. Комментарий содержит количество ответов, но отображает только ограниченное число из них.
Спасибо за быстрый ответ. Я вижу, как работает ваше решение, но я не получаю агрегат для работы. Я опубликовал другой вопрос SO: http://stackoverflow.com/questions/40636434/aggregate-returns-empty-array-mongoose – Stefan