2017-04-16 64 views
0

我已經將mLab添加到我的Heroku應用程序中,我也使用貓鼬。我嘗試從本地主機使用連接字符串,它工作(幾乎)。在我的服務器上的文件我用:mLab在Heroku上不起作用

var db = mongoose.connection; 
if (process.env.MONGODB_URI) { 
mongoose.connect('mongodb://heroku_fb82r7lw:[email protected]:61580/heroku_fb82r7lw'); 

    // mongoose.connect(process.env.MONGODB_URI); 
} else { 
mongoose.connect('mongodb://heroku_fb82r7lw:[email protected]:61580/heroku_fb82r7lw'); 

    // mongoose.connect('mongodb://localhost/fitMe') 
} 

如果我打開從本地主機的應用程序,它保存的東西到數據庫,並能找回來,雖然不是萬能的,但在Heroku並不在所有的工作。我用服務器反應。我覺得這事錯的擊潰..所以這裏是鏈接到服務器上的文件: https://github.com/HelenaVolskaia/Motivation/blob/master/server/app.js

+0

如果我沒有弄錯,你必須使用mLab添加在Heroku上使用mLab:https://elements.heroku.com/addons/mongolab –

+0

是的,我正在使用它,來自mLab的連接字符串 –

+0

當你說「根本不起作用」時,你是什麼意思?數據是否消失*?是否有錯誤訊息?需要更多細節。 –

回答

0

您可以在本地設置環境變量,只有用這個:

// Connect Mongo 
mongoose.Promise = global.Promise; // mongoose promises deprecated, use node - mongoosejs.com/docs/promises 
mongoose.connect(config.db.MONGODB_URI); 
mongoose.connection.once('open',() => { console.log('MongoDB Connected'); }); 
mongoose.connection.on('error', (err) => { console.log('MongoDB connection error: ', err); }); 

但無論如何,添加上連接錯誤處理程序並查看錯誤是什麼,所以您可以深入瞭解爲什麼它沒有連接。

相關問題