在环境中为mongoose定义连接字符串

时间:2012-04-16 14:10:37

标签: node.js express mongoose railway.js

我有一个相当"典型的"设置(我使用RailwayJS)

模式:

customSchema(function(){
    // Initialize Mongo DB
    var mongoose = require('mongoose'),
        Schema = mongoose.Schema;

    mongoose.connect('mongodb://localhost/mydb'); //todo: needs to come from connection or something?!

    var MyModel = new Schema({
        name : String,
        email : String,
        something : String
    });
});

我的问题是,如何指定要使用的连接字符串?

我应该将mongoose.connect部分移到我的配置部分吗?

1 个答案:

答案 0 :(得分:0)

这是我喜欢使用的:

var mongourl = process.argv[2] || process.env.NODE_DB || 'mongodb://anywhere/db';

请记住将NODE_DB更改为您的env变量名称。

请注意,我还允许传递命令行参数(在使用Cloud9运行应用程序时很有用,因为这个很棒的服务不允许使用env变量)。索引为2,因为命令为node app.js mongodb://address,请记住根据需要进行调整。