2014-02-27 38 views
0

我在本地運行的應用程序,這是我已經習慣了..如何使用MongoHQ和Node.js在Heroku上設置MongoDB?

的Heroku提供下面的代碼片段:

var mongo = require('mongodb'); 

var mongoUri = process.env.MONGOLAB_URI || 
    process.env.MONGOHQ_URL || 
    'mongodb://localhost/mydb'; 

mongo.Db.connect(mongoUri, function (err, db) { 
    db.collection('mydocs', function(er, collection) { 
    collection.insert({'mykey': 'myvalue'}, {safe: true}, function(er,rs) { 
    }); 
    }); 
}); 

下面是從MongoHQ代碼片段:

MongoClient.connect(process.env.MONGOHQ_URL, function(err, db) { 
    // operate on the collection named "test" 
    var collection = db.collection('test') 

下面是MongoDB的Node.js的中/快遞我的本地代碼:

var MongoClient = require('mongodb').MongoClient; 
var Server = require('mongodb').Server; 

var mongoclient = new MongoClient(new Server('localhost', 27017, 
               { 'native_parser' : true })); 
var db = mongoclient.db('demo'); 


mongoclient.open(function (err, mongoclient) { 
    if (err) throw err 
    app.listen(9999); 
    console.log("Express server started on port 9999"); 
}); 

我怎樣才能轉換這個代碼集,或合併這兩個,或什麼..?

回答

0
var MongoClient = require('mongodb').MongoClient; 
var Server = require('mongodb').Server; 

var mongoUri = process.env.MONGOLAB_URI || 
    process.env.MONGOHQ_URL || 
    'mongodb://localhost/demo'; 


var mongoclient = new MongoClient(new Server(mongoUri, 
               { 'native_parser' : true })); 

mongoclient.open(function (err, mongoclient) { 
    if (err) throw err 
    app.listen(9999); 
    console.log("Express server started on port 9999"); 
}); 

試試看。

相關問題