В проекте NodeJS у меня есть 2 модели "Новости" и "Комментарии", как показано ниже.
/* File: Comment.js */
const mongoose = require("mongoose");
/* Create Comment Schema */
var commentSchema = mongoose.Schema({
text: { type: String, required: 'Kindly enter the comment text'},
newsId: { type: mongoose.Schema.Types.ObjectId, ref: "News", required: 'Provide the news ID to which this comment belongs' },
created_date: { type: Date, default: Date.now }
});
module.exports = mongoose.model('Comment', commentSchema);
/* File: News.js */
const mongoose = require("mongoose");
/* Create News Schema */
var newsSchema = mongoose.Schema({
link: { type: String, index: {unique: true, dropDups: true}, required: 'Kindly enter the link of the news' },
description: { type: String, required: 'Kindly enter the description of the news' },
comments: { type: [commentSchema] }
});
module.exports = mongoose.model('News', newsSchema);
Модель новостей имеет массив изкомментарии, которые являются вложенным документом.Но выдает ошибку
ReferenceError: commentSchema не определена.
Я заметил, что если обе схемы как в одном файле, это не выдает никакой ошибки.