подключение к Altlas или localhost - PullRequest
0 голосов
/ 09 октября 2019

Я могу подключиться к localhost или Atlas, но когда я пытаюсь использовать ||это нарушает. Я должен указать 'dbName' при подключении к Atlas, но он ломает мой localhost.

этот код работает для localhost:

mongoose.connect( process.env.LOCAL );
mongoose.connection.on("open", function (ref) {
  console.log("Connected to mongo server.");
});
mongoose.connection.on('error', function (err) { console.log(err) });

, и этот код работает для моего Atlas:

mongoose.connect( process.env.ATLAS_URI, { useNewUrlParser: true, dbName: 'wwatlasDB' });
mongoose.connection.on("open", function (ref) {
  console.log("Connected to mongo server.");
});
mongoose.connection.on('error', function (err) { console.log(err) });

, но когда я пытаюсь:

mongoose.connect( process.env.LOCAL || process.env.ATLAS_URI, { useNewUrlParser: true, dbName: 'wwatlasDB' });

, это терпит неудачу. Есть ли способ сделать это?

Ответы [ 2 ]

0 голосов
/ 10 октября 2019
mongoose.connect( process.env.ATLAS_URI, { useNewUrlParser: true, dbName: 'wwatlasDB' });
mongoose.connection.on("open", function (ref) {
  console.log("Connected to mongo server.");
});
mongoose.connection.on('error', function (err) { console.log(err) });

Кажется, это также локально подключается!

0 голосов
/ 09 октября 2019

Самый простой способ - просто проверить, что у вас есть env до connect, например:

if(process.env.LOCAL) {
 mongoose.connect( process.env.LOCAL );
} else {
 mongoose.connect( process.env.ATLAS_URI, { useNewUrlParser: true, dbName: 'wwatlasDB' } );
}
mongoose.connection.on("open", function (ref) {
 console.log("Connected to mongo server.");
});
mongoose.connection.on('error', function (err) { console.log(err) });
...