我想将moongose结果中的对象解析为DTO以获取我的观点。我在这里有一个查询示例,它返回一个结果mongoose对象:
const returnedData = (err, result) => {
//Result object is a schema from Moongose
cb(err, result);
};
Text.findOne({}).exec(returnedData);
我的文字架构示例:
const mongoose = require('mongoose');
const textSchema = new mongoose.Schema({
TextMessage: String,
ZIndex: Number,
Color: String,
FontSize: String,
FontFamily: String
}, { timestamps: true , collection: 'Text'});
const Text = mongoose.model('Text', textSchema);
module.exports = Text;
我的DTO对象:
let dto =
{
TextMessage: null,
_id: null
}
我的想法是"自动地图"属性值从Text对象到我的dto对象,并丢弃值,如timestamps。
自动生成此内容的任何想法或库?谢谢!
答案 0 :(得分:1)
这对你来说可能很方便
http://mongoosejs.com/docs/api.html#document_Document-toObject
由于mongoose返回的对象基本上是在Document之后建模的,因此上面说明了如何直接将它转换为普通的javascript对象。
您还可以在转化后验证同步。