【发布时间】:2012-01-30 16:08:47
【问题描述】:
所以我正在将我的 express 应用程序分成模块,我有一个问题。
目前我的 app.js 包含:
var db = module.exports.db = require('./helpers/db')(app.set('database'))
模型文件包含:
var DB = require('../app').db;
在阅读This 之后,构建模块的一种方法似乎是从模块中导出应用程序并要求应用程序,然后直接在路上要求该模块。
这意味着在我的 db.js 中我需要 require('../app'),而在我的模型中我需要 db = require('db')。
目前 db.js 返回一个新的 mysql 连接实例:
module.exports = function(settings) {
return new MysqlDB(settings);
}
我认为将 module.exports.db 移出 app.js 并在每个模型中直接要求 db.js 会创建连接的多个实例,我错了吗?
我自己写的有点困惑,所以请让我知道我可以在哪里改进这个问题。 欢迎提供任何和所有提示,我真的很想更好地了解这一切。
谢谢!
【问题讨论】: