3

私は DailyJS のNodepadチュートリアルを使用しています。私はそれをフォークし、自分の目的のために機能するように拡張しています。私が抱えている問題の 1 つは、アプリケーション全体がファイルに記述されていることです。私はアプリケーションをもう少し分離したいと考えています。マングースに関連するものはすべて.app.jsapp.js

外部ファイルがデータベースに適切に接続し、マングース スキーマを理解できるようにするには、何を外部ファイルに引き継ぐ必要がありますか?

4

2 に答える 2

4

これを行う最も適切な方法は、アプリの初期化時にモデルを Mongoose に登録することです。その後、それらを使用する場合は、「ユーザー」を再度要求するのではなく、Mongoose からモデルを取得するだけです。

各接続を手動で管理する必要があるという特定の要件がない限り、Mongoose との既定の接続を開くことで作業を簡単にすることもできます。

次のようにします。

app.js

var mongoose = require('mongoose');
require('./models/user');
mongoose.connect('server', 'database');

モデル/user.js

var mongoose = require('mongoose')
  , Schema = mongoose.Schema
  , ObjectId = Schema.ObjectId;

UserSchema = new Schema({
    email: {type: String, "default": ''},
    created_at: {type: Date, Date.now}
});

mongoose.model('User', UserSchema); // no need to export the model

どこか他の...

var mongoose = require('mongoose')
  , User = mongoose.model('User');

var u = new User({email: 'youremail@something.com'});
u.save();
于 2012-11-13T12:26:20.253 に答える