Mongoose为现有字段返回undefined

Mal*_*hak 7 javascript mongoose mongodb

在mongoose请求之后,我有我的文档doc,这是查询的结果

这是使用的模式

var searchSchema = new mongoose.Schema({
    original : String,
    images : [String],
    image: String
});
Run Code Online (Sandbox Code Playgroud)

该模型 :

var searchModel = mongoose.model('Search', searchSchema);
Run Code Online (Sandbox Code Playgroud)

使用的代码:

searchModel.findOne({original : input}, function (err, doc) {
    if (err) {
        console.log(err);
    }
    if (typeof doc !== "undefined") {
        console.log(doc);
                    console.log(doc.image);
    }
});
Run Code Online (Sandbox Code Playgroud)

第一个console.log:

{ 
    _id: 531401bf714420359fd929c9,
    image: 'http://url.com/image.jpg',
    original: 'lorem ipsum dolor sit amet' 
}
Run Code Online (Sandbox Code Playgroud)

第二个返回undefined,但前一个确实显示现有image属性,这意味着它存在.

我的架构没有什么特别之处,所以我不明白这里可能会发生什么.

Joh*_*yHK 6

如果尚未将字段添加到架构中,则会看到此信息.

添加image到您的架构,它应该工作:

image: String
Run Code Online (Sandbox Code Playgroud)