Mongoose 3.4.0返回而不是实际的值 – Nodejs

这是我的模式

var elementSchema = new Schema({ name: String, storage: { url: String, type: String } }); 

但是当我:

 var newElement = new Element(); newElement.storage = {}; newElement.storage.url = "asd"; newElement.storage.type = "asd"; console.log(newElement.storage); 

我得到[object Object] ,而它应该返回{url:"asd",type:"asd"}

事实上,如果我去查询它,我会得到:

 { storage: "[object Object]", bubble: ObjectId("510880b82e6e350200000002"), _id: ObjectId("5113c0c0786ece0000000001"), __v: 0 } 

要在embedded式子文档(如storage使用名为type的字段,必须使用明确的定义,否则Mongoose会感到困惑:

 var elementSchema = new Schema({ name: String, storage: { url: String, type: { type: String } } }); 

不要使用console.log() ,而是使用

 var util = require('util'); util.inspect(newElement.storage);