我连接到server.js文件中的mongo DB
实例并从另一个文件导入模型。
我的问题是,如何使用模型中的对象更新数据库未连接到mongoDB
文件中的server.js
个实例?
所以我有一个server.js
,其中包含以下几行:
//server.js
...
var mongoose = require('mongoose');
mongoose.connect('mongodb://localhost/Iganiq8o');
var Bear = require('./app/models/bear');
var router = express.Router();
router.route('/bears')
.post(function(req, res) {
var bear = new Bear();
bear.name = req.body.name;
bear.save(function(err) {
if (err)
res.send(err);
res.json({ message: 'Bear created!' });
});
});
app.use('/api', router);
...
我有一个模型文件,如:
// app/models/bear.js
var mongoose = require('mongoose');
var Schema = mongoose.Schema;
var BearSchema = new Schema({
name: String
});
module.exports = mongoose.model('Bear', BearSchema);
所以,我能够使用Bear模型更新mongoDB,即使它永远不会连接到bear.js文件中的mongoDB实例。
我的熊(var bear = new Bear();
)对象如何知道mongoDB
实例?有关如何发生的任何帮助吗?
答案 0 :(得分:0)
因为模型是通过mongoose.model
创建的,所以模型与调用mongoose.connect('mongodb://localhost/Iganiq8o');
这一切都有效,因为在任何文件中调用require('mongoose')
都会返回相同的cached Mongoose模块实例。