settings
Express ドキュメントには、http :
//expressjs.com/api.html#app-settingsというセクションがあります。
しかし、私は正確にどこに行くべきかを理解することはできません(いくつかの機能に?使用ミドルウェアの辞書として?または他の場所に?)
PSこれらのことを理解するにはどうすればよいですか-ソースを見る必要がありますか?
settings
Express ドキュメントには、http :
//expressjs.com/api.html#app-settingsというセクションがあります。
しかし、私は正確にどこに行くべきかを理解することはできません(いくつかの機能に?使用ミドルウェアの辞書として?または他の場所に?)
PSこれらのことを理解するにはどうすればよいですか-ソースを見る必要がありますか?
構成を管理するには多くの方法がありますが、これについて私が書いたブログ投稿があります: http://www.chovy.com/node-js/managing-config-variables-inside-a-node-js-application/
基本的な前提は、各環境 (つまり、config.development.js、config.production.js) 用のファイルがあり、config.global.js と呼ばれる他のすべてのファイル用に 1 つあるということです。開発ファイルと運用ファイルは、グローバルに設定したものを単純に上書きします。その環境のニーズに基づいています。
基本的な config/index.js ファイルは次のとおりです。これにより、NODE_ENV=test を想定して config.test.js ファイルが読み込まれます (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.global.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);
それだけです。
使用する必要がありますapp.set
:
app.set('name of setting', 'value');
通常、それらを特定の構成ブロックに入れます。
app.configure(function () {
// ...
});
さまざまな構成を持つために名前付きブロックを使用することもできます。
Express にアプリケーションを作成して見てもらいましょう。そのためには、単に実行します
$ express --help
コマンドプロンプトで、それが提供するものを確認してください。
PS:これはあなたの両方の質問に答えます;-)