Uczę się średniego stosu i kiedy próbuję uruchomić serwer za pomocą
npm start
Mam wyjątek, który mówi, że:
schema hasn't been registered for model 'Post'. Use mongoose.model(name, schema)
tutaj jest mój kod w /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);
jak widzę schemat powinien być zarejestrowany dla modelu „Post”, ale co może być przyczyną wyrzucenia wyjątku?
Z góry dziękuję.
Edycja: Oto błąd wyjątku
/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)
a oto kod app.js z inicjalizacją mongoose:
var mongoose = require('mongoose');
mongoose.connect('mongodb://localhost/news');
require('./models/Posts');
require('./models/Comments');
przed linią:
app.use('/', routes);
Post.js
gdzieś „potrzebujesz” (ing) , ale nigdy nie „eksportowałeś” modelu.