나는 평균 스택을 배우고 있으며 서버를 시작하려고 할 때
npm start
다음과 같은 예외가 발생합니다.
schema hasn't been registered for model 'Post'. Use mongoose.model(name, schema)
다음은 /models/Posts.js 내부의 코드입니다.
var mongoose = require('mongoose');
var PostSchema = new mongoose.Schema({
title: String,
link: String,
upvotes: { type: Number, default: 0 },
comments: [{ type: mongoose.Schema.Types.ObjectId, ref: 'Comment' }]
});
mongoose.model('Post', PostSchema);
내가 볼 수 있듯이 스키마는 'Post'모델에 등록되어야하지만 예외가 throw되는 원인은 무엇입니까?
미리 감사드립니다.
편집 : 다음은 예외 오류입니다.
/home/arash/Documents/projects/personal/flapper-news/node_modules/mongoose/lib/index.js:323
throw new mongoose.Error.MissingSchemaError(name);
^
MissingSchemaError: Schema hasn't been registered for model "Post".
Use mongoose.model(name, schema)
몽구스 초기화를 사용한 app.js 코드는 다음과 같습니다.
var mongoose = require('mongoose');
mongoose.connect('mongodb://localhost/news');
require('./models/Posts');
require('./models/Comments');
줄 앞 :
app.use('/', routes);
Post.js
어딘가에 "필요"(ing) 하지만 모델을 "내 보낸"적이 없을 수도 있습니다.