繁体   English   中英

ZCCADCDEDB567ABAE643E15DCF0974E503Z 在填充方法中返回 id 而不是 _id

[英]Mongoose return id instead of _id in populate method

我有两个相关的模型: RecipeUser

当我使用populate()从数据库中获取配方和相关用户时,我希望返回的用户 object 具有id属性而不是_id属性。

const recipe = await Recipe.findOne({ _id }).populate('user', '-password');

当我记录用户 model 的值时,我想得到这个:

{
  id: 5eea82b11a97e9429ca61778,
  name: 'John Doe',
  email: 'johndoe@gmail.com'
}

我尝试将id属性添加到用户 object,它没有改变任何东西。 我仍然有_id属性。

recipe.user = { ...recipe.user, id: recipe.user_id };
    noteSchema.set('toJSON', {
  transform: (document, returnedObject) => {
    returnedObject.id = returnedObject._id.toString()
    delete returnedObject._id
    delete returnedObject.__v
  }
})

这就是我用来删除下划线的方法 - 您可以转换文档并删除您不想要的位

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM