模式的自引用不起作用



下面是我的Schema -

var mongoose = require('mongoose');
// Create Schema
var userSchema = new mongoose.Schema({
    name: String,
    email: String,
    created_by: { type: Schema.Types.ObjectId, ref: 'User'},
    created_date: { type: Date, default: Date.now }
});
// compile Schema into a model
var User = mongoose.model('User', userSchema);
// Make this instance available when require()d
module.exports = User;

下面是我得到的错误-

/trialcoder/project/server/models/user.js:26
    created_by: { type: Schema.Types.ObjectId, ref: 'User'},
                        ^
ReferenceError: Schema is not defined
    at Object.<anonymous> (/trialcoder/project/server/models/user.js:26:25)

让我知道我做错了什么,因为目前我正在遵循这里的第二种方法参考

供参考-我删除了一些字段,所以这里的行号可能不一样。

Schema不存在,您需要使用:mongoose.Schema.Types.ObjectId来访问对象引用,或者创建一个具有该名称的变量并将moongoseSchema存储在其中:

var moongose,
    Schema = `mongoose.Schema`;

最新更新