2016-12-06 25 views
0

プロダクション用のmlab dbと開発用のローカルデータベースに接続しようとしています。私の言う通り、NODE_ENVは本番に設定されています。しかし、私はそれを読むことができないので、私はそれが何とかうんざりしていると思う。さらに、私は私のdev dbに接続し続けます。

私はmongodインスタンスを実行します。そして別のCLIで、私のapp.jsファイルを収めている私のアプリケーションフォルダに移動してください。私は、このコマンドが認識されないことを得る、と言うのチュートリアルは、しかし

process.env.NODE_ENV 

を実行するには、次のよ。そこで私はNODE_ENV変数を使って変数をチェックします:set 私は以前に設定したNODE_ENV=productionを取得します。しかしながら。 npm startを使用して私のアプリケーションを実行すると、私はまだ私のdevサーバーに接続します。ここに私のdb.js codeはあります:

var mongoose = require('mongoose'); 
var gracefulShutdown; 
var dbURI = 'mongodb://localhost/Loc8r'; 

if(process.env.NODE_ENV == 'production'){ 
console.log('we are in production'); 
    dbURI = 'mongodb://username:[email protected]:55555/dbname' 
} 
mongoose.connect(dbURI); 


// to address mongoose closing issues in windows 
var readLine = require('readline'); 
if (process.platform === "win32"){ 
    var rl = readLine.createInterface({ 
     input: process.stdin, 
     output: process.stdout 
    }); 
    rl.on ("SIGINT", function(){ 
     process.emit ("SIGINT"); 
    }); 
} 
// close Mongoose connection, passing in an anonymous function to run when closed 
gracefulShutdown = function(msg, callback){ 
    mongoose.connection.close(function(){ 
     console.log("Mongoose disconnected through " + msg); 
     callback(); 
    }); 
}; 

mongoose.connection.on('connected', function(){ 
    console.log('Mongoose connected to ' + dbURI); 
}); 

mongoose.connection.on('error', function(err){ 
    console.log('Mongoose connection error: ' + err); 
}); 

mongoose.connection.on('disconnected', function(){ 
    console.log('Mongoose disconnected'); 
}); 

// for nodemon termination 
process.once('SIGUSR2', function(){ 
    gracefulShutdown('nodemon restart', function(){ 
     process.kill(process.pid, 'SIGUSR2'); 
    }); 
}); 

// for app termination 
process.on('SIGINT', function(){ 
    gracefulShutdown('app termination', function(){ 
     process.exit(0); 
    }); 
}); 

// for HEroku termination 
process.on('SIGTERM', function(){ 
    gracefulShutdown('Heroku app shutdown', function(){ 
     process.exit(0); 
    }); 
}); 

require('./locations'); 

私はどこから始めるべきか分かりません。私は私のGoogle検索を使い果たしました。

答えて

0

だから、私はWindowsで、set NODE_ENV=productionはまだ私は読むことができないあなたがapp.js

を収容するディレクトリで実行する必要があり、 https://stackoverflow.com/a/9250168/5574017 どうやらこのコメントに句の答えを見つけた私の$ process.env.NODE_ENV

が、 setでそれを読んでから、NODE_ENVを探してください。

私はあなたの時間を無駄にして申し訳ありません。

ありがとうございます。

関連する問題