我正在尝试使用 Mongoose 制作休息API,我想隐藏 __v 属性,并且我通过这样做成功地将其隐藏在 find 和 findById 上:
Contact.find({}, '-__v', function(error, list) { });
Contact.findById(req.params.id, '-__v', function(error, item) { });
但是当我使用创建方法时
Contact.create(req.body, function(error, item) { });
它返回给我添加了 __v 属性的项目。
我还尝试了在这样的架构上使用 select: false 的方法
__v: {
type: Number,
select: false
}
此方法也执行相同的操作,它从 find 和 findById 中隐藏 __v 属性,但也不从 crate 方法返回的对象中隐藏它。
最佳答案
在架构中您可以按如下方式设置
var Schema = new Schema({...}, { versionKey: false });
关于node.js - Mongoose 创建返回 __v,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47386799/