我定义了几个模式。这是一个很好的工作:
var mongoose = require('mongoose'),
Schema = mongoose.Schema;
var NewsSchema = new Schema({
name: String,
route: String,
remoteURL: String,
articles: [{title: String, link: String, Image: String, contentSnippet: String}],
retrieved: Date,
dormant: { type: Boolean, default: false}
});
module.exports = mongoose.model('News', NewsSchema);
这是第二个几乎相同的:
var mongoose = require('mongoose'),
Schema = mongoose.Schema
// NewsSchema = new Schema({ name: String });
var ArticlesSchema = new Schema({
title: String,
link: String,
pubDate: Date,
image: String,
contentSnippet: String,
sourceName: String
// sourceId: [ {type: Schema.Types.ObjectId, ref: NewsSchema}]
});
module.exports = mongoose.model('Articles', ArticlesSchema);
我已经在程序的顶部加载了两个模块,以及其他一些类似的东西:
players = require('./app/models/players'),
articles = require('./app/models/articles'),
如果我用以下内容创建第一个实例:
var player = new Players();
但是如果我尝试用:
创建第二个实例var item = new Articles();
我收到主题中的错误。在跟踪代码时,我可以看到模块在范围内,所以我不相信它像重新定义变量或类似的东西一样愚蠢。
这里有几个这种性质的问题,并且没有一个被接受的答案适用。
有什么想法吗?
答案 0 :(得分:0)
嗯,经过进一步分析,工作“模型”不再起作用。事实证明,我根据Visual Studio Code的建议更改了顶部require语句中的大小写。一切都很好。
答案 1 :(得分:0)