2013-02-24 46 views

回答

0

你必须使用app.set

app.set('name of setting', 'value'); 
0

你通常把它们放在一个特定的配置块:

app.configure(function() { 
    // ... 
}); 

你甚至可以使用命名块具有不同的配置。

让快递为你创建一个应用程序,并看看它。对于这个简单的运行

$ express --help 

在命令提示符,看看它提供了什么。

PS:这回答您的两个问题;-)

+1

它似乎已被废弃:http://expressjs.com/api.html#app.configure – drozzy 2013-02-24 09:36:54

1

有管理配置的方法很多,但这里有一个博客帖子我写这件事: http://www.chovy.com/node-js/managing-config-variables-inside-a-node-js-application/

的基本前提是你有一个每个环境(比如config.development.js,config.production.js)都有一个文件,另一个叫做config.global.js,开发和生产文件会根据环境的需要简单地覆盖你在全局设置的任何东西。

这里是基本的配置/ index.js文件,这将加载config.test.js文件假设你NODE_ENV =测试(我们将默认为“发展”,如果没有定义NODE_ENV):

var env = process.env.NODE_ENV || 'development' 
    , cfg = require('./config.'+env); 

module.exports = cfg; 

接下来是config.test.js其中包括config.global.js,然后覆盖它需要JSON对象:

config.test.js:

var config = require('./config.global'); 

config.env = 'test'; 
config.hostname = 'test.example'; 
config.mongo.db = 'example_test'; 

module.exports = config; 

而且config.glo它定义了所有默认值bal.js:

var config = module.exports = {}; 

config.env = 'development'; 
config.hostname = 'dev.example.com'; 

//mongo database 
config.mongo = {}; 
config.mongo.uri = process.env.MONGO_URI || 'localhost'; 
config.mongo.db = 'example_dev'; 

现在我们把它包一起,在模型中使用它在我们的代码...例如,你可能会做./models/user.js是这样的:

var mongoose = require('mongoose') 
, cfg = require('../config') 
, db = mongoose.createConnection(cfg.mongo.uri, cfg.mongo.db); 

这就是它的全部。

+0

好的博客文章/答案。 – scaryguy 2015-02-03 23:36:24