使用Express定义连接uri的最佳位置

时间:2013-05-17 18:00:18

标签: node.js mongodb express

我刚刚开始学习ExpressJs,我正试图将它与mongoskin一起使用。 我想知道的是定义uri连接数据库的最佳位置。我不希望在每个需要连接到db的文件中都这样做。

我尝试在app.js文件中执行此操作:

var app = express();
...
app.set('db_uri', process.env.NODE_DB || ""localhost/test"");
...
module.exports = app;

在将要访问db的文件中:

var mongo = require('mongoskin'),
    app = require('./../../app'),
    db = mongo.db(app.settings.db_uri);

但问题是我总是收到 app 的空对象。 所以,我有两个问题。

1)这是最好的方法吗?

2)我无法访问应用程序有什么问题?

1 个答案:

答案 0 :(得分:0)

我认为这样做的一种方法是创建一个处理与数据库交互的模块,这样你就可以:

  • 在那里写下网址
  • 或其中的配置文件require d
  • 或者您可以使用process.env

并且在需​​要数据库交互时需要模型,这样就不需要快递来了解它。

关于app不需要:检查您是否通过module.exports导出它并且路径正确(例如,可以省略第一个./。)