2012-06-16 44 views
0

我目前正在開發一個小型的個人多人遊戲項目。我使用node.js以及express.js,mongoose和socket.io。這是我第一個使用JavaScript的項目,我來自C/C++背景。Node.js中的通用要求

的問題是: 無論某種通用的要求是可能的: 我目前一個模型文件夾在我的項目的根和所有的貓鼬車型都在裏面, 看起來都與此類似:

function make(Schema, mongoose) { 
var UserSchema = new Schema({ 
    name  : String 
    , passwd : String 
    , is_online : Boolean 
    , socket_id : Number 
}); 
mongoose.model('User', UserSchema); 
} 
module.exports.make = make; 

如果我記得沒錯,我發現這種方法在stackoverflow的某處。現在,當我啓動node.js應用程序時,必須連接到數據庫,然後必須調用所有make函數。

有沒有一種通用的方法來做到這一點?

Somethink這樣的(僞代碼):

models = require('./models/'); 
for each m in models do 
{ 
    m.make(Schema, mongoose); 
} 

回答

1

我這樣做有點不同:

var UserSchema = new Schema({ 
    name  : String 
    , passwd : String 
    , is_online : Boolean 
    , socket_id : Number 
}); 
module.exports = mongoose.model('User', UserSchema); 

現在我可以要求模型,並用它馬上像這樣:

var userModel = require('models/user'); 
userModel.find()//...