2013-02-22 18 views
0

您好,我對nodejs環境很陌生。在nodeJS中如何在NODE_ENV調用時使用數據庫環境

am使用nodeJs + compoundjs。

我有三個數據庫環境開發。生產和測試。我在運行NODE_ENV =生產節點時的問題。命令,所有的URL,端口號和其他東西都應該從production.js中獲得。當我通過提供命令NODE_ENV =開發節點來移動節點環境時。所有需要運行的東西都應該從development.js中獲得。

對此的任何註釋也對我有幫助。

如果有人有任何想法,請與我分享。

回答

1

必須設置環境,然後你可以配置你的應用程序,如:

(這是貓鼬分貝和表達,但你可以找到類似的配置。)

只需設置三個環境配置

app.configure('development', function() { 
    mongoose.connect(devConfig.db.path, function onMongooseError(err) { 
    }); 
}); 

app.configure('production', function() { 
    mongoose.connect(proConfig.db.path, function onMongooseError(err) { 
    }); 
}); 

的配置示例(config.js):

var config = {}; 

// Database (MongoDB) configurations 
config.db = { 
path : 'mongodb://localhost/sampleDatabase' 
}; 

module.exports = config; 

我需要此文件在我的app.js通過var config = require('config')

您也可以在配置文件中執行環境檢測。

+0

什麼是你的代碼中的devConfig.db.path和proConfig.db.path。 – God 2013-02-22 09:52:36

+0

它是一個簡單的.json文件,您可以在硬盤上或作爲對象。我有一個包含配置的模塊,我將附上一個示例來回答 – pfried 2013-02-22 09:54:55

+0

你現在正在類似地獲取URL或路徑形式config.js。這裏我的問題是,當我從各種環境切換所有細節都來自同一個配置文件,我想從環境development.js test.js像vise得到的細節..你有什麼想問什麼? – God 2013-02-22 10:04:59

相關問題