javascript - 分配架构时出现“架构路径值无效”错误
问题描述
在我的nodejs
应用程序中,我在文件中定义了一个模式作为模块:
let schema_pool_jobs = new mongoose.Schema({
task_name : String,
params : Object,
status : String,
progress : Number
});
module.exports.schema_pool_jobs = schema_pool_jobs;
然后在另一个文件中我“需要”这个模块并在connectToMongo
函数内部使用它来将集合绑定到模式:
let schemas = require(path_to_schema_file);
let connectToMongo = () => {
return new Promise((resolve, reject) => {
let conn = mongoose.createConnection(CONFIG.MONGO_DB, {
useMongoClient: true
});
conn.on("open", () => {
console.log("connected");
conn.model("pool_jobs", schemas.schema_pool_jobs, "pool_jobs");
return resolve();
});
conn.on("error", error => reject(error));
});
}
connectToMongo();
但是一旦我运行它,我就会看到
connected
TypeError: Invalid value for schema path `paths.task_name.regExp`
at Schema.add (C:\Users\xxx\dev\project\node_modules\mongoose\lib\schema.js:383:13)
at Schema.add (C:\Users\xxx\dev\project\node_modules\mongoose\lib\schema.js:396:14)
at Schema.add (C:\Users\xxx\dev\project\node_modules\mongoose\lib\schema.js:396:14)
at new Schema (C:\Users\xxx\dev\project\node_modules\mongoose\lib\schema.js:105:10)
at NativeConnection.Connection.model (C:\Users\xxx\dev\project\node_modules\mongoose\lib\connection.js:1034:14)
at NativeConnection.mongoose.project.on (evalmachine.<anonymous>:37:32)
at emitNone (events.js:106:13)
at NativeConnection.emit (events.js:208:7)
at open (C:\Users\xxx\dev\project\node_modules\mongoose\lib\connection.js:738:11)
at NativeConnection.Connection.onOpen (C:\Users\xxx\dev\project\node_modules\mongoose\lib\connection.js:747:5)
at C:\Users\xxx\dev\project\node_modules\mongoose\lib\connection.js:707:11
at C:\Users\xxx\dev\project\node_modules\mongoose\lib\drivers\node-mongodb-native\connection.js:227:5
at C:\Users\xxx\dev\project\node_modules\mongoose\node_modules\mongodb\lib\db.js:239:5
at ReplSet.connectHandler (C:\Users\xxx\dev\project\node_modules\mongoose\node_modules\mongodb\lib\replset.js:343:7)
at Object.onceWrapper (events.js:315:30)
at emitOne (events.js:116:13)
我找不到任何合理的解释这意味着什么以及为什么会发生这种情况。任何想法如何解决它?
我正在使用猫鼬4.8.2
。
解决方案
好的,我设法弄清楚发生了什么。事实证明,我在猫鼬之前创建了模式,这required
导致了猫鼬的大脑扭曲。一旦我第一次需要mongoose
然后定义模式,一切都会好起来的。
推荐阅读
- java-8 - 在 Apache Camel 中拆分 Zip 文件?
- c++ - Windows 串行端口未正确连接?
- macros - WinActivate 在窗口最小化时打开但不激活窗口
- machine-learning - 处理训练数据和预测数据中的特征数量不匹配
- ssis - 启动 ADFv2 Azure-SSIS 集成运行时时出错
- php - 从 JSON 对象获取数据
- extjs - EXTjs 3.4网格中的numbercolumn如何显示印度数字格式?
- c# - xaml中锚的同义词是什么
- angular - 我们如何使用多自定义 Mat Menu?
- django - Django - 如何修改酥脆的表格?