Eth*_* Wu 3 mongoose mongodb node.js
我想使用解决方案返回"id"字段而不是"_id"
以下是我的代码:
ScenicSpotSchema.virtual('id').get(function () {
var id = this._id.toString();
delete this._id;
delete this.__v;
return id;
});
Run Code Online (Sandbox Code Playgroud)
但是响应仍然有字段"id"和"_id",似乎delete没有生效.为什么?
小智 6
我估计你需要的是jSON.这应该做你想要的:
schema.options.toJSON = {
transform: function(doc, ret) {
ret.id = ret._id;
delete ret._id;
delete ret.__v;
}
};Run Code Online (Sandbox Code Playgroud)