node.js - mongoose使用过程中遇到的MissingSchemaError问题。

浏览:22日期:2022-10-03

问题描述

我就不多说了,直接上代码吧!这是user文件:

var mongoose = require(’mongoose’), Schema = mongoose.Schema;var userSchema = new Schema({uid: { type: Number, unique: true},name: { type: String, required: true},phone: { type: String, required: true},password: { type: String, required: true} });module.exports = mongoose.model(’User’, userSchema);

这是user的controller文件:

var mongoose = require(’mongoose’), User = mongoose.model(’User’), _ = require(’lodash’);/*增加一个user数据*/exports.create = function (req, res, next) { var data = req.body; console.log(req + ’%%%%%%%%%req content’); console.log(data + ’@@@@@@@@data’); User.save(data, function (err) {console.log(err); }, function (res) {console.log(res); }); return next()};

这是router文件:

var user = require(’./controllers/user’);module.exports = function (app) { app.post(’api/user/:id’,user.create());};

这是server文件:

var express = require(’express’), //session = require(’express-session’), mongoose = require(’mongoose’), router = require(’./lib/router’), app = express();app.use(express.static(__dirname + ’/’));mongoose.connect(’mongodb://localhost/test’);var db = mongoose.connection;db.on(’error’, console.error.bind(console, ’connection error:’));router(app);console.log(’you have logged in successfully!’);app.listen(4000);

然后是报错的代码:

throw new mongoose.Error.MissingSchemaError(name); ^MissingSchemaError: Schema hasn’t been registered for model 'User'.Use mongoose.model(name, schema) at Mongoose.model (e:自己做的项目TradingPlatformnode_modulesmongooselibindex.js:350:13) at Object.<anonymous> (e:自己做的项目TradingPlatformlibcontrollersuser.js:9:21) at Module._compile (module.js:409:26) at Object.Module._extensions..js (module.js:416:10) at Module.load (module.js:343:32) at Function.Module._load (module.js:300:12) at Module.require (module.js:353:17) at require (internal/module.js:12:17) at Object.<anonymous> (e:自己做的项目TradingPlatformlibrouter.js:7:12) at Module._compile (module.js:409:26) at Object.Module._extensions..js (module.js:416:10) at Module.load (module.js:343:32) at Function.Module._load (module.js:300:12) at Module.require (module.js:353:17) at require (internal/module.js:12:17) at Object.<anonymous> (e:自己做的项目TradingPlatformserver.js:10:14)Process finished with exit code 1

求各位大神解答

问题解答

回答1:

controllers/user贴下这个文件的代码吧

相关文章: