1
resposta

Erro no renderizar

Ao renderizar, o código descrito pela aula, não obtenho os valores do bando de dados. Só foi solucionado quando coloquei "result.rows", conforme parte do código abaixo. Tem haver, porque estou usando o postgres?

module.exports = function(app){
app.get('/produtos',function(req,resposta){


const pg = require('pg');

const config = {
    host: 'localhost',
    user: 'postgres',     
    password: '123456',
    database: 'postgres',
    port: 5432
};

const client = new pg.Client(config);

client.connect(err => {
    if (err) throw err;
    else {
        queryDatabase();
    }
});

function queryDatabase() {
    const query = 'select * from public.t_livros';
    client.query(query,function(err,result){ 

        resposta.render('produtos/lista',{lista:result.rows});
        console.log(result);

    });
};

});

}
1 resposta

Marcos, não é o Node que implementa a lógica de fazer a requisição no banco e te devolver os resultados.

Quem faz isso é o driver do banco que você instalou. Cada driver implementa sua própria API. Por isso os comandos podem ser diferentes, e a maneira como ele te retorna resultados, erros e qualquer outra coisa podem e provavelmente irão variar.