mongoose插件抛出错误:MissingSchemaError:Schema没有't已注册为型号“t”;预约
mongoose plugin throws an error: MissingSchemaError: Schema hasn't been registered for model "Appointment"
我无法解决猫鼬投掷错误的问题
throw new mongoose.Error.MissingSchemaError(name);
^
MissingSchemaError: Schema hasn't been registered for model "Appointment".
Use mongoose.model(name, schema)
我包括了所有的路径,根据我的另一个Schemas进行了检查,一切似乎都很好。我是不是错过了什么?
EXPRESS.JS:
var config = require('./config'),
express = require('express'),
morgan = require('morgan'),
compress = require('compression'),
bodyParser = require('body-parser'),
methodOverride = require('method-override'),
session = require('express-session');
module.exports = function() {
var app = express();
if (process.env.NODE_ENV === 'development') {
app.use(morgan('dev'));
} else if(process.env.NODE_ENV === 'production') {
app.use(compress());
}
app.use(bodyParser.urlencoded({
extended: true
}));
app.use(bodyParser.json());
app.use(methodOverride());
app.use(session({
saveUninitialized: true,
resave: true,
secret: 'config.sessionSecret'
}));
app.set('views', './app/views');
app.set('view engine', 'ejs');
require('../app/routes/index.server.routes')(app);
require('../app/routes/users.server.routes')(app);
require('../app/routes/appointment.server.routes')(app);
app.use(express.static('./public'));
return app;
};
任命.服务器.模型.JS:
var mongoose = require('mongoose'),
Schema = mongoose.Schema;
var AppointmentSchema = new Schema({
UserID: {
type: Schema.ObjectId,
ref: User,
private: true
},
time: {
type: String,
get: function(){
for (var i in Schedule.freeTime){
if (i === this.time) {
return this.time
}
}
}
}
});
mongoose.model('Appointment', AppointmentSchema);
AppointmentSchema.set('toJSON', {getters: true});
任命.服务器.控制器.JS:
var Appointment = require('mongoose').model('Appointment'),
User = require('./user.server.controller');
exports.create = function(req,res,next) {
var appointment = new Appointment(req.body);
appointment.UserID = User;
appointment.save(function (err) {
if (err){
return next(err);
} else{
res.json(appointment);
}
});
};
预约.服务器.路由.JS:
var appointments = require('../../app/controllers/appointment.server.controller');
module.exports = function(app) {
app.route('/appointment').post(appointments.create);
};
错误似乎表明我没有创建Appointment
架构,这是我在APPOINTMENT.SERVER.MODEL.JS:
Nevermind,看起来我把猫鼬配置本身搞砸了。。。问题解决了!
相关文章:
- 点击facebook像素跟踪注册(JS/JQUERY代码)
- 当组件准备就绪时,如何在Polymer中动态注册新属性
- 注册OpenLayers事件时,即使使用匿名函数或绑定,JavaScript关闭也会触发循环内的所有内容
- 如何在单击“提交”按钮时为“新建”窗口编写JavaScript,用“确定”和“取消”显示注册信息
- Angularamd在typescript控制器注册中
- 注册组件的非角度和角度版本
- 如何从已注册的事件发送 JavaScript 对象
- 不使用Grunt.initConfig()注册Grunt任务
- 使用谷歌图表将mousedown事件注册为click
- Stormpath注册页面上的社交登录
- 可以'我无法提交AJAX注册表
- 注册成功后重定向
- 模态上的输入/注册字段不起作用
- 如何在使用Passport.js和Sails.js注册后重定向到特定位置
- 注册后是否可以定义HTML5自定义元素中的生命周期回调
- 在Firefox插件中注册控制台服务侦听器
- Cucumber+Mongoose给了我Schema has'尚未注册型号
- 没有为Ajax添加的新元素注册Jquery事件
- 如何从npm注册表中删除npm包
- mongoose插件抛出错误:MissingSchemaError:Schema没有't已注册为型号“t”;预约