2012-02-14 9 views
11

私のapp.jsファイルに関数が詰まっていないように、エクスプレスアプリケーションのさまざまな層を分ける最善の方法は何ですか?私はJavaの世界から来ているので、私は通常モデル、ビジネスロジック、DAOコードを別々の層に持っています。express/node.jsでモデル、ロジック、DAOを分離する

私は気になるところがありました.app.jsのDBへの接続を開いて、そこにアクセスする必要のあるさまざまなコード間で共有するにはどうすればいいですか?ルーティングされた機能ではなく、ビジネスロジックモジュールです。

答えて

7

次のように別々のファイルとしてこのプロジェクトを参照してください:

https://github.com/lethus/popbroker

routes.js - ここにあなたが機能を置くモデル - ここでは、通常のコントローラ

models.jsを基準に、ルートを置きますMongoDBのの

forms.js - あなたがオブジェクトの検証を働く

コントローラ/ users.js - ターJava UIのようなものです。ここでmodels.jsと呼んで、insert、update、list、Findsを実行します。

+0

実際のデータベースを使って例を見てみましょう接続プールを最適に利用できます。 – mlaccetti

+0

別の例としてChristian's Express-jsのブログを見てください。https://github.com/csanz/expressjs-blog – Don

関連する問題