我有以下两个收藏
const DashboardSchema = new Schema({
userId: {
type: SchemaTypes.ObjectId
}
}, { toJSON: { virtuals: true }, toObject: { virtuals: true } });
const reportSchema = new Schema({
userId: Schema.Types.ObjectId,
seq: Number,
date: Date
});
我们将为单个用户提供多个报告。我想获取所有基于userId的用户报告
我已经尝试过了
return await Dashboard.aggregate([
{
"$match": {
"userId": "5bb0b0f408458a675419d575"//sample id
}
}
{
"$lookup": {
"from": reportSchema.collection.name,
"let": { "userId": "$userId" },
"pipeline": [
{
"$match": {
"$expr":
{
"$eq":
["$userId", "$$userId"]
}
}
},
{ "$sort": { "date": -1 } },
{ "$limit": 10 }
],
"as": "Reports"
}
},
]);
,但返回null。 有什么想法吗?