Tigermax139
@Tigermax139
just love coding

Не могу вставить значение в коллекцию mongo db?

пишу свой блог, в нем создаю форму подписки на розсилку.
форма простенькая на одно поле для имейла. с формы даные методом пост идут на сервер node:

app.post('/subscribe', (req, res) => {

MongoClient.connect( urlDB, (err, db) => {
if(err) {
return console.log(err);
}
var subscriber = {
email: req.body.subscriberEmail
};
db.collection('contacts').insert(subscriber, (err, result) => {
if(err) {
console.log(err);
res.sendStatus(500);
}
res.render('subscribe', {
msg: `${subscriber}`
});
db.close();
});
});
});

весь сайт робочий, а вот при отправке мейла падает сервер и получаю ошибку:
Template\DevBlog\node_modules\mongodb\lib\mongo_client.js:810
throw err;
^
TypeError: db.collection is not a function
сразу скажу, что подключение к БД корректное. и сама форма без БД работает отлично
  • Вопрос задан
  • 272 просмотра
Решения вопроса 1
Tigermax139
@Tigermax139 Автор вопроса
just love coding
написал в сапорт mLab, после писем 10 общения с Грегом. Он посоветовал поменять зависимость в package.json для mongodb.
я поставил "mongodb": "~2.2",
и переустановил пакет модулей, и все заработало.
Может кому то поможет
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы