Mongoose - TypeError:object不是函数

时间:2015-08-05 17:16:43

标签: javascript node.js mongoose

我正在尝试将我的model/user.model.js文件中的Mongoose模型导出到我的服务器目录中的server.js文件中。

模型/ user.model.js

var mongoose = require('mongoose');
var Schema = mongoose.Schema();

var UserSchema = new Schema({
    instagramId: { type: String, index: true },
    email: { type: String, unique: true, lowercase: true },
    password: { type: String, select: false },
    userName: String,
    fullName: String,
    picture: String,
    accessToken: String
});

module.exports = mongoose.model('User', UserSchema, 'users');

server.js

var User = require('./models/user.model');

mongoose.connect(config.db);

我收到此错误消息

  

\ server \ models \ user.model.js 5

     

var UserSchema = new Schema({

     

TypeError:object不是函数

我知道我将模式声明为UserSchema,但我认为我使用变量User

导出了文件
module.exports = mongoose.model('User', UserSchema, 'users');

我尝试使用用户名来查询我的猫鼬模型。

有什么想法吗?提前谢谢。

1 个答案:

答案 0 :(得分:10)

您错误地将Schema分配给实例:

var Schema = mongoose.Schema();

相反,应该为其分配mongoose.Schema类:

var Schema = mongoose.Schema;