2012-01-03 35 views

回答

4

您想將db傳遞給user.js路由文件。你正在做的是將它傳遞給app.resource函數。

app.resource('user', require('./routes/user')(db)); 

你將不得不包裝你的user.js的文件中,可以接收db作爲參數的函數。

module.exports = function(db) { 
    return { 
     index: function(req, res) {} 
    , new: function(req, res) {} 
    , create: function(req, res) {} 
    // etc 
    }; 
}; 

如果你不喜歡這種結構的方式,你也可以使用中間件。

app.use(function(req, res, next) { 
    req.db = db; 
    next(); 
}); 
+0

你不需要在中間件的下一個內部調用嗎? – Kolja 2013-06-24 17:07:39

+0

是的,我認爲你是對的。 – fent 2013-06-26 16:15:58