我正在使用猫鼬填充-
let allLeaders = await DAOManager.populate(
models.Users,
{ firstName: "Mayank" },
{firstName: 1, lastName: 1, district: 1},
{ lean : true},
{ path: "userId", select: "county designation gender" }
);
在用户模型中-
let Users = new schema({
userId: { type: schema.Types.ObjectId, ref: 'hubiloUsers' }})
输出:
{
"_id": "5a05799b936a8c707f0e022f",
"userId": {
"_id": "5a057915c31eb5601da9b75f",
"designation": "CTO ",
"gender": "male",
"county": "India"
},
"firstName": "Mayank",
"lastName": "Sharma",
"district": "ABC"
}
问题---在输出中,我得到了userid对象。无论如何,我可以在外面获取userId输出数据。这样我就可以将数据发送到视图或前端。预先非常感谢
答案 0 :(得分:0)
您可以为聚合使用$ project。
答案 1 :(得分:0)
我之前曾问过Mongoose的开发者,他说这是设计使然。我确实同意您的观点,有时将其作为平面结构更有意义,但是您能做什么!
您可以在此处阅读问题:https://github.com/Automattic/mongoose/issues/7281
手术后,您必须自行将其更改为平面结构。