Node.js 无法将heroku连接到数据库

Node.js 无法将heroku连接到数据库,node.js,mongodb,heroku,Node.js,Mongodb,Heroku,我是一个新开发人员,我不知道我在部署我的应用程序方面做了什么。在本地,我可以完美地运行它。我已经建立了heroku帐户和Mongonabs帐户。我的app.js文件启动了我的应用程序,我在heroku中正确设置了它,当我做heroku日志时,它显示它试图启动它,但在找不到mongodb时崩溃。我的代码可能完全错了,我迷路了,不知道在哪里可以找到答案。我已经找了好几个小时了。下面交换了用户名和密码,但我在尝试发送文件时使用了正确的凭据 我的app.js文件是: var express = requ

我是一个新开发人员,我不知道我在部署我的应用程序方面做了什么。在本地,我可以完美地运行它。我已经建立了heroku帐户和Mongonabs帐户。我的app.js文件启动了我的应用程序,我在heroku中正确设置了它,当我做heroku日志时,它显示它试图启动它,但在找不到mongodb时崩溃。我的代码可能完全错了,我迷路了,不知道在哪里可以找到答案。我已经找了好几个小时了。下面交换了用户名和密码,但我在尝试发送文件时使用了正确的凭据

我的app.js文件是:

var express = require('express');
var app = express();
var mongodb = require('mongodb');
var reddit = require('./routes/reddit');
var enter = require('./routes/enter');
var user = require('./routes/user');
var update = require('./routes/update');
var message = require('./routes/message');
var register = require('./routes/register');
var login = require('./routes/login');
var rate = require('./routes/rate');
var credentials = require ('./routes/request-credentials');
var uri = 'mongodb://removed:removed@ds045734.mongolab.com:45734/bubsta';
mongodb.MongoClient.connect(uri, function(err, db){
    if(err) throw err;
});

app.use('/', reddit);
app.use('/user', user);
app.use('/enter', enter);
app.use('/update', update);
app.use('/login', login);
app.use('/message', message);
app.use('/register', register);
app.use('/rate', rate);
app.use('/credentials', credentials);
app.use(express.static('public/dist'));
app.use(express.static('public/js'));
app.use(express.static('public/dist/images'));
app.use(express.static('bower_components'));

app.listen(1337);
console.log('Started on server 1337');
创建模式并连接的文件如下所示。我已经注释掉了在本地工作的旧代码,但是我包含它只是为了让您看到我以前连接过,以及为什么我认为我应该将我的新代码放在这里

var mongoose = require('mongoose');
var Schema = mongoose.Schema;

// mongoose.connect('mongodb://localhost:27017/Users/mike/project-two/users');
mongoose.connect('mongodb://removed:removed@ds045734.mongolab.com:45734/bubsta');

var User = new Schema({
    name: { type: String, index: { unique: true }},
    password: String,
    email: String,
    positive: Number,
    negative: Number,
    points: Number,
    title: String,
    sessions: Number,
    roomFull: Boolean
});

module.exports = mongoose.model('user', User);

如果有人能帮我编写正确的代码,或者甚至用说明如何设置文件的文档为我指明正确的方向,以便我能与heroku一起使用mongolabs,我将不胜感激。

我能够解决这个问题。我需要使用:

var mongoUri = process.env.MONGOLAB_URI

mongo.connect(mongoUri, function(err, db){
    if (err){
        console.log(err);
    }else{
        console.log('success');
    };
});

app.listen(process.env.PORT || 1337);
然后,为了我的猫鼬连接,我需要:

mongoose.connect('mongodb://heroku_somecodeherebutnotthisonec@ds048704.mongolab.com:48704/heroku_3rjmclqw');
有关heroku的教程,请参见。希望能有帮助。