如何将mongoose js模型转换为对象

时间:2014-02-26 08:36:27

标签: node.js mongodb mongoose

我正在使用mongodb的node.js和mongoosejs framwork。我试图将猫鼬模型转换为对象,我能够做到这一点,但我只获得更少的元素而不是获得所有元素。下面是我试过的代码。

user.js的

var schema = new Schema({
name:{ type:string  },

title:{ type:string, default:"mr"  }
});


module.exports = mongoose.model('Users', schema);

usermanager.js

var User = require(../user.js);

var user = new User();
console.log(user.toString());
//printed as {_id:2583457assda312, title:'mr'}

我期待该对象中的名称键。我也试过toObject它也给了我同样的回应。 是否有任何意义可以实现这个目标?

1 个答案:

答案 0 :(得分:3)

您的用法应如下所示:

var user = new User({ name: "Fred" })

您将从您定义的内容中获取值,因此在这种情况下:

//printed as {_id:2583457assda312, name: "Fred", title:'mr'}

或者您提供的标题如下:

var user = new User({ name: "Wilma", title: "Ms" })

再次获得输出

//printed as {_id:2583457assda312, name: "Wilma", title: "Ms"}

如果你要做的是检查模式,那么Mongoose模式对象上有一个paths属性

console.log( user.schema.paths )

这应该为您定义您定义的模式的各个部分。