使用Mongoose保存()新文档时。您如何选择要返回的字段?
const productV2 = new ProductV2({ _id: req.query.po_product_id });
productV2.save(function (err, product) {
if (err) {
res.status(500).json({ error: err });
} else {
console.log('product', product);
console.log(3);
res.send(product);
}
});
答案 0 :(得分:0)
干净的方法是在猫鼬实例上定义要返回特定字段的方法。
例如,如果您有这样的ProductV2
模式,例如:
const ProductV2 = new mongoose.Schema({
name: String,
price: Number,
count: Number
})
// You can define an instance method on your schema
ProductV2.methods.getSpecificFields = function() {
// For example you want to retrieve only name and price fields
return {
name: this.name,
price: this.price
}
}
定义instance method
后,您可以在代码中使用它:
const productV2 = new ProductV2({ _id: req.query.po_product_id });
productV2.save(function (err, product) {
if (err) {
res.status(500).json({ error: err });
} else {
console.log('product', product);
console.log(3);
res.send(product.getSpecificFields());
}
});
要了解有关instance methods
和statics methods
的更多信息,请参见this