6
respostas

2. Coesão e Acoplamento, organizando o código

Tive um problema na alteração do arquivo lista.ejs Quando inseri o loop "for" para que dinamizar a página, ocorreu o seguinte erro:

TypeError: C:\Users\artca\Documents\teste-node\casadocodigo\app\views\produtos\lista.ejs:10 8|

preco 9|

10| <%for(var i=0; i 11|

12| <%=lista[i].id%> 13| <%=lista[i].titulo%>

Cannot read property 'length' of undefined

Na lista.ejs , o codigo está assim:

IdNomedescricaopreco
<%for(var i=0; i <%=lista[i].id%><%=lista[i].titulo%><%=lista[i].descricao%><%=lista[i].preco%> <%}%> Poderiam me ajudar?
6 respostas

Opa, a variável lista não está definida... verifica se não ocorreu algum erro no retorno da sua query.. no callback tem uma variável que representa os erros, da um console.log nela para checar.

Dentro da variável dos erros não veio nada, eu coloquei o console log na variavel "results" e apareceu o seguinte:

Failed to load resource: the server responded with a status of 500 (Internal Server Error)

Oi Arthur, pode colocar seu código no github? assim eu dou uma olhada.

Arthur, o problema pode ser que o results esteja retornando o valor nulo. A estrutura do banco esta corretamente configurada? O nome da sua tabela é produtos mesmo?

Tente executar a consulta diretamente no mysql e veja se retorna os resultados.

Até mais

No video eu notei que foi trocado na query do select de livros para produtos. Estava com o mesmo erro aqui. this._connection.query('select * from livros',callback);

Verifique se pode ser a mesma coisa.