2012-01-03 33 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