编译后无法覆盖`modelName`模型

时间:2016-11-24 13:15:56

标签: javascript node.js mongodb express

编译后无法覆盖partnerCode模型。

我有一个像models / partnerCode.js

这样的文件
var mongoose = require('mongoose');
var Schema = mongoose.Schema;

var partnerCodeSchema = new Schema({
    email: String,
    used: {type: Number, default: 0}
});

var partnerCode = module.exports = mongoose.model('partnerCode', partnerCodeSchema);

module.exports.add = function(code){
    partnerCode.findOne({email:code},function(err,response){
        console.log(response);
    }); 
}

在我的app.js中我尝试添加一个终点来进行休息POST

var PartnerCodeModel = require('./models/PartnerCode');
app.post('/PartnerCodeModel/add', PartnerCodeModel.add( function(req,res,next){
  console.log('code: '+req.body.code);
}))

上面的代码不起作用,我得到Cannot overwrite partnerCode model once compiled为什么?

1 个答案:

答案 0 :(得分:0)

它应该像这样工作:

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

var partnerCodeSchema = new Schema({
    email: String,
    used: {type: Number, default: 0}
});

var partnerCode = mongoose.model('partnerCode', partnerCodeSchema);

module.exports.add = function(code){
    partnerCode.findOne({email:code},function(err,response){
        console.log(response);
    }); 
}

如果您需要任何进一步的帮助,请对此答案发表评论。我想帮助你。 : - )