TypeError:不能使用'in'运算符在undefined中search'pluralization'
我试图使用鉴别器来实现inheritance,如Mongoose API文档中所示 。 但是,我不断收到以下错误:
C:\ Code \ project \ node_modules \ mongoose \ lib \ index.js:364 if(!(schema.options中的'pluralization'))schema.options.pluralization = thi
^
TypeError:无法使用'in'运算符在Mongoose.model(C:\ Code \ project \ node_modules \ mongoose \ lib \ index.js:364:34)
这是导致上述错误的代码; 我尝试扩展mongoose Schema类来创build我的基本模式:
var util = require('util'); var mongoose = require('mongoose'); var Schema = mongoose.Schema; function ResourceSchema() { Schema.apply(this, arguments); this.add({ title: String }); } util.inherits(ResourceSchema, Schema); module.exports = mongoose.model('Resource', ResourceSchema);
我也尝试在最后一行设置集合名称,但是这没有帮助。
module.exports = mongoose.model('Resource', ResourceSchema, 'resources');
您试图从模式类创build模型,而不是模式实例 。
用这个代替:
module.exports = mongoose.model('Resource', new ResourceSchema());
这与您通常创build模型的方式类似:
var schema = new Schema({ ... }); // or, in your case, ResourceSchema var model = mongoose.model('Model', schema);