Файл базы данных SelectDb.js
module.exports = new promise(function(resolve,reject){
pool.connect(function(err,client,done){
if(err) console.log(err.toString());
else {
client.query('SELECT text FROM public.message;', function (err,
result) {
done();
console.log("I make new Request");
if(result) {
resolve(result);
//client.end();
}
})
}
});
})
При первом запросе я получаю данные из бд, при повторном не срабатывает. При добавлении данных в базе данных отображаются в самой базе данных,а повторный запрос присылает не обновленные данные,а первоначальные.
Я не понимаю, я сам должен закрыть соединение и сделать повторно запрос,что бы получить обновленные данные?
done() разместил в нужном мне месте, согласно документации.
Пытаясь закрыть мне выдает ошибку:
Error [ERR_STREAM_WRITE_AFTER_END]: write after end
Как я понимаю не туда сую закрытие или нафиг ты закрываешь если я еще не вернул данные. Я не уверен что я вообще понимаю какие действия требуются для адекватной работы.
Суть, просто вызываю функцию. И все проблемы решены. Не знаю на сколько это правильно.
module.exports.SelMsg = function MsgSel(){
return new Promise(function(resolve,reject){
pool.connect()
.then(function (client) {
client.query('SELECT text FROM public.message;')
.then(function (res) {
resolve(res);
client.release();
}).catch(function (e) {
console.log(e);
})
})
})
}
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости