var mongoose = require('mongoose');
mongoose.connect('mongodb://localhost/test', {user: 'mongod'});
mongoose.connection.once('open', function () {
我创建了一个带有一个字段和严格的模型:false
var Foo = mongoose.model('Foo', mongoose.Schema({
foo: String
}, {strict: false}));
然后保存带有两个字段的模型
Foo.create({foo: "FOO", bar: "BAR"}, function () {
然后阅读并用字段打印
Foo.findOne(function (err, f) {
console.log(f, f.foo, f.bar);
});
});
});
输出为{ foo: 'FOO', bar: 'BAR', _id: 53c249e876be58931f760e70, __v: 0 }
,'FOO'
,undefined
。新元素已正确保存,console.log
可以看到'BAR'
,但我不能。只要我在架构中添加栏,我也可以看到它。这是预期的行为吗? 如何在未将其包含在架构中的情况下触及bar