抛出新的mongoose.Error.MissingSchemaError(name); ^ MongooseError:尚未为模型“商户"注册模式. [英] throw new mongoose.Error.MissingSchemaError(name); ^ MongooseError: Schema hasn't been registered for model "merchant"

查看:343
本文介绍了抛出新的mongoose.Error.MissingSchemaError(name); ^ MongooseError:尚未为模型“商户"注册模式.的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

  throw new mongoose.Error.MissingSchemaError(name);
  ^

MongooseError:尚未为模型商人"注册架构. 使用mongoose.model(名称,模式) 在Mongoose.model(C:\ survey-system \ node_modules \ mongoose \ lib \ index.js:362:13)

MongooseError: Schema hasn't been registered for model "merchant". Use mongoose.model(name, schema) at Mongoose.model (C:\survey-system\node_modules\mongoose\lib\index.js:362:13)

app.js:

var express = require('express');
var path = require('path');
var favicon = require('serve-favicon');
var logger = require('morgan');
var cookieParser = require('cookie-parser');
var bodyParser = require('body-parser');
var index = require('./routes/index');

require('./models/merchant');

var mongoose = require('mongoose').model('merchant');
var merchant = require('./routes/merchant');
mongoose.connect('mongodb://localhost/SK');

var app = express();

routes/index.js

var express = require('express');
var router = express.Router();
var bodyParser = require('body-parser');
var mongoose = require('mongoose');
mongoose.connect('mongodb://localhost/SK');
var merchant = mongoose.model('merchant');

router.get('/merchant', function(req, res, next) {
  merchant.find({},function(err, docs){
                res.send('index',{docs:docs})
        });
  });

model/merchant.js

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

var merchantSchema = new Schema({

id              :Number, 
merchant_id     :{type: [String], index: true },
merchant_name   :String,
merchant_type   :String,
contact_name    :String,
phone           :String,
email           :String,
Address         :String,

created_date: { type: Date, default: Date.now }
});


var merchant  = mongoose.model('merchant', merchantSchema);

exports =merchant;

推荐答案

在模型导入上方声明mongoose.connect

var express = require('express');
var path = require('path');
var favicon = require('serve-favicon');
var logger = require('morgan');
var cookieParser = require('cookie-parser');
var bodyParser = require('body-parser');
var mongoose = require('mongoose')

mongoose.connect('mongodb://localhost/SK');


var MerchantModel = require('./models/merchant');

//  var mongoose = require('mongoose').model('merchant');
var index = require('./routes/index');
var merchant = require('./routes/merchant');


var app = express();

这篇关于抛出新的mongoose.Error.MissingSchemaError(name); ^ MongooseError:尚未为模型“商户"注册模式.的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆