在我的应用程序中使用node.js和mongoDB.Below是我的示例代码。
var mongodb = require('mongodb');
var server = new mongodb.Server("localhost", 27017, {});
new mongodb.Db('test', server, {w: 1}).open(function (error, client) {
if (error) throw error;
var collection = new mongodb.Collection(client, 'test_collection');
collection.insert({hello: 'world'}, {safe:true},
function(err, objects) {
if(!err){
console.log('Data inserted successfully.');
}
if (err && err.message.indexOf('E11000 ') !== -1) {
// this _id was already inserted in the database
}
});
});
现在我需要mongoDB实例到我的app中的其他模块。我怎么能这样做。
答案 0 :(得分:0)
一种简单的方法,如果我们假设您发布的代码位于app.js中,则可以将第2行重写为:
var server = exports.db = new mongodb.Server("localhost", 27017, {});
在需要访问实例的模块中,只需编写:
require('app').db
更常见的方法可能是将共享内容放在settings.js文件中,或者使用专用的数据库接口模块。
<强>更新强>
要访问已打开的客户端,您将以相同的方式公开客户端:
new mongodb.Db('test', server, {w: 1}).open(function (error, client) {
exports.client = client;
// ...
});