Mongoose .populate 未在 JSON 中显示
Posted
技术标签:
【中文标题】Mongoose .populate 未在 JSON 中显示【英文标题】:Mongoose .populate not showing in JSON 【发布时间】:2021-09-30 06:56:06 【问题描述】:我有一些代码填充了一个名为“用户”的部分。当我 console.log 结果我得到一个很好的填充文档,如下所示:
[ _id: 60f92778ceefc423d834d9c0,
title: 'Vaatwasser',
day: 0,
house: '60f455b1e0394e12a226045a',
user: _id: 60f4142ff55f81251a7224ff, name: 'Lucas Blommers' ,
createdAt: 2021-07-22T08:08:24.477Z,
updatedAt: 2021-07-22T08:08:24.477Z,
__v: 0 ,
_id: 60f92788ceefc423d834d9c3,
title: 'Koken',
day: 0,
house: '60f455b1e0394e12a226045a',
user: _id: 60f4142ff55f81251a7224ff, name: 'Lucas Blommers' ,
createdAt: 2021-07-22T08:08:40.712Z,
updatedAt: 2021-07-22T08:08:40.712Z,
__v: 0 ]
但是当我使用 android 或 Postman 请求数据时,我得到以下结果:
"_id": "60f92778ceefc423d834d9c0",
"title": "Vaatwasser",
"day": 0,
"house": "60f455b1e0394e12a226045a",
"user": ,
"createdAt": "2021-07-22T08:08:24.477Z",
"updatedAt": "2021-07-22T08:08:24.477Z",
"__v": 0
,
如您所见,用户在发送后是一个空对象。 这是 JSON 库中的错误还是我在服务器上做错了什么。
-编辑- 这是服务器端代码:
const housekeepings = await Housekeeping.find(day:day, house:
house).populate("user", "name")
console.log(housekeepings)
return res.send(housekeepings)
【问题讨论】:
你可以试试await Housekeeping.find(day:day, house: house).populate("user", "name").lean()
【参考方案1】:
"你可以试试 await Housekeeping.find(day:day, house: house).populate("user", "name").lean() – Cuong Le Ngoc"
这就是答案。非常感谢Cuong。
【讨论】:
以上是关于Mongoose .populate 未在 JSON 中显示的主要内容,如果未能解决你的问题,请参考以下文章