Я пытаюсь установить многоразовое соединение Mongodb Object
через отдельный модуль. Так что моя стратегия заключается в создании файла конфигурации в каталоге конфигурации
( сервер / config / db-connection.js ) -
var MongoClient = require( 'mongodb' ).MongoClient;
var _db;
module.exports = {
connectToServer: function( callback ) {
MongoClient.connect( "mongodb://localhost:27017/articles", function( err, db ) {
_db = db;
return callback( err );
});
},
getDb: function() {
return _db;
}
};
Позже я пытался инициализировать соединение с базой данных в моем файле server.js
( server.js ) -
const mongoConfig = require('./server/config/db-connection');
mongoConfig.connectToServer(function (err) {
if (err) console.log(err);
});
В файле роутера я пытался вставить свое сообщение в коллекцию users
, используя повторно используемый объект соединения.
( сервер / маршруты / admin.js / ) -
const express = require('express');
const router = express.Router();
const mongoConfig = require('../config/db-connection');
var articlesDB = mongoConfig.getDb();
router.post('/configure', (req, res, next) => {
let super_admin_info = req.body;
super_admin_info.role = 'superadmin';
articlesDB.collection('users').insert(super_admin_info)
.then((result) => {
console.log(result);
res.send('Successfully saved super admin');
})
.catch((error) => {
console.log(error);
});
});
module.exports = router;
Я получаю следующую ошибку -
Невозможно прочитать свойство 'collection' из неопределенного
Подскажите, пожалуйста, в чем проблема в моем коде?
Спасибо!