MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Mungo-Verbindung

Wenn Sie mongoose.connect aufrufen , wird eine Verbindung mit der Datenbank hergestellt.

Sie hängen jedoch den Ereignis-Listener für open an zu einem viel späteren Zeitpunkt (wenn eine Anfrage bearbeitet wird), was bedeutet, dass die Verbindung wahrscheinlich bereits aktiv und der open ist Ereignis wurde bereits aufgerufen (Sie haben nur noch nicht darauf gelauscht).

Sie sollten Ihren Code neu anordnen, damit der Event-Handler (zeitlich) so nah wie möglich am Connect-Aufruf ist:

var mongoose = require('mongoose');
mongoose.connect('mongodb://localhost/test');
var db = mongoose.connection;
db.on('error', console.error.bind(console, 'connection error:'));
db.once('open', function callback () {
  console.log("h");
});

exports.test = function(req,res) {
  res.render('test');
};