猫鼬导入模型不起作用
Mongoose importing models won't work
当我在使用它们的同一个文件中定义我的模式和模型时,一切正常。
但是,如果我像我在网上看到所有示例一样导入它们:像这样......
索引.js
var mongoose = require('mongoose');
var User = require('./../models/user');
mongoose.connect('mongodb://localhost/demo_database', function(){
var user = new User({...});
});
用户.js
var mongoose = require('mongoose');
var UserSch = new mongoose.Schema({
...
});
module.exports = mongoose.model('user', UserSch);
。然后我在索引中的任何用户实例上运行的任何函数.js都将挂起。
我已经通过将猫鼬变量传递给用户来解决此问题.js就像这样......
索引.js
var mongoose = require('mongoose');
var User = require('./../models/user')(mongoose);
mongoose.connect('mongodb://localhost/demo_database', function(){
var user = new User({...});
});
用户.js
module.exports = function(mongoose) {
var UserSch = new mongoose.Schema({
...
});
return mongoose.model('user', UserSch);
}
为什么我必须这样做,而我看到的所有例子都没有?
谢谢!
附加信息
如果我将 user.js 移动到与 index 相同的文件夹.js并执行var User = require('./user')
,则一切都按预期工作。
试试这段代码!!
索引.js
var mongoose = require('mongoose');
mongoose .connect(connectionString)
var mongoDb = mongoose.connection
mongoDb.on('error', () => {
server.log('error', `Unable to connect to database: ${config.database.connectionString}`)
})
mongoDb.once('open', () => {
server.log('info', `Connected to database: ${config.database.connectionString}`)
})
// Load all Mongoose models
require('./../models/user');
//Using Model
var userModel = mongoose.model('user');
userModel.findOne({ _id: "id..." })
用户.js
var mongoose = require('mongoose');
var UserSch = new mongoose.Schema({
...
});
module.exports = mongoose.model('user', UserSch);
相关文章:
- 角度无线电按钮ng模型不起作用
- 初始化ng模型时,Angular ui选择占位符不起作用
- 角度去抖动(ng模型选项)不起作用
- ng模型在$(element).clone()之后不起作用
- 如果条件在代码点火器的模型中不起作用
- 挖空.js嵌套视图模型不起作用
- 为什么我的视图模型不起作用
- 使用嵌套ng中带有单选按钮的ng模型重复不起作用
- 当使用jQuery设置值时,ng模型不起作用
- 有角度的ng模型在ng重复中不起作用
- Select选项包含在验证模型MVC时不起作用
- 自定义主干.模型操作不起作用
- ArangoDB Foxx 模型日期时间戳不起作用
- 角度ng模型不起作用
- jQuery 模型弹出窗口不起作用
- 猫鼬导入模型不起作用
- 以编程方式更改模型时,ngChange 不起作用
- 角度JS模型更新不起作用
- 使用 JavaScript 复制模型的输入文本不起作用
- 在使用具有隔离作用域的指令时保存模型值不起作用