Ваш arrayT.forEach не выполняет итерации по чему-либо, так как arrayT пуст и из-за того, что он не выполняет итерации по чему-либо, в строку кода res.render () никогда не попадаетВы можете доказать это с console.log ();
Мой совет вам - использовать асинхронное ожидание и избегать обещаний, так как они могут потенциально привести к вложенному коду, например к обратным вызовам.
Предпочтительный код:
router.get('/list', async (req, res) => {
try {
const arrayT = [];
const listOfKPs = await Kp.find({})
listOfKPs.forEach( ele => {
arrayT.push({
summary: element.summary,
detailDesc: element.detailDesc
});
});
return res.render('list', { arrayT });
}
catch(err) {
console.log(err);
return res.render('list', { [] }); // render empty list
}
});