Mongolab中的正确路由

时间:2015-05-06 01:14:51

标签: javascript mongodb heroku mongoose mlab

我正在尝试使用Heroku和mongoLab插件创建一个Web应用程序。我按照Heroku网站上的说明操作,可以使用以下代码连接到我的mongoLab数据库。

var mongoose = require('mongoose');
var uriUtil = require('mongodb-uri');

var options = { server: { socketOptions: { keepAlive: 1, connectTimeoutMS: 30000 } },
    replset: { socketOptions: { keepAlive: 1, connectTimeoutMS : 30000 } } };

var mongodbUri = process.env.MONGOLAB_URI;
var mongooseUri = uriUtil.formatMongoose(mongodbUri);

mongoose.connect(mongooseUri, options);

var db = mongoose.connection;

db.on('error', console.error.bind(console, 'connection error:'));

db.once('open', function() {
    console.log("connection successful");
});

通常,在进行路由时,我会执行以下操作。

var Test;
var testSchema = new mongoose.Schema({
    test: String,
});

Test = mongoose.model('Test', testSchema);

module.exports = {Test: Test};

然后我可以通过在http请求中执行简单的var Models = require(“./ models”)和Models.Test.find(回调)来轻松地在我的路径文件中引用我的Test模型。

问题:使用mongolab数据库添加此相同功能的最佳做法是什么?我可以创建模式并手动编写代码以在db.once中向我的数据库添加记录,但我希望能够通过单独的javaScript文件中的http请求执行所有基本CRUD命令。

非常感谢任何指导!

1 个答案:

答案 0 :(得分:0)

经过几个小时的搜索,看起来像定义路由并在db.once中启动快速服务器是最佳做法。这是我找到的链接。

Routing with MongoLab