Есть следующая структура моделей:
var Schema = mongoose.Schema;
var schemaMessage = new Schema({
message: {
type: String,
required: true
},
from: {
type: Schema.ObjectId
},
to: {
type: Schema.ObjectId,
},
date_created: {
type: Date,
default: Date.now
}
});
var schemaTopic = new Schema({
title: {
type: String,
required: true
},
creator: {
type: Schema.ObjectId,
required: true,
ref: 'User'
},
messages: [schemaMessage],
date_created: {
type: Date,
default: Date.now
}
});
Нужно для топика получить n его документов пытаюсь это сделать так
schemaTopic.statics.getMessageList = function (topic, callback) {
console.log(topic);
this.aggregate([
{$match: {_id: topic}},
{$unwind: "$messages"}
],callback);
};
но получаю пустой массив но если в $match делать поиск не по _id, а к примеру по creator то документ находится