Nas aulas apesar de não haver o atributo lista, o livro ainda é inserido. Mas no meu caso o seguinte erro é mostrado e nada é inserido.
lista is not defined
at eval (eval at <anonymous> (/home/lucasponte/casadocodigo/node_modules/ejs/lib/ejs.js:495:12), <anonymous>:11:24)
at returnedFn (/home/lucasponte/casadocodigo/node_modules/ejs/lib/ejs.js:524:17)
at View.exports.renderFile [as engine] (/home/lucasponte/casadocodigo/node_modules/ejs/lib/ejs.js:378:31)
at View.render (/home/lucasponte/casadocodigo/node_modules/express/lib/view.js:126:8)
at tryRender (/home/lucasponte/casadocodigo/node_modules/express/lib/application.js:639:10)
at EventEmitter.render (/home/lucasponte/casadocodigo/node_modules/express/lib/application.js:591:3)
at ServerResponse.render (/home/lucasponte/casadocodigo/node_modules/express/lib/response.js:960:7)
at Query._callback (/home/lucasponte/casadocodigo/app/routes/produtos.js:29:21)
at Query.Sequence.end (/home/lucasponte/casadocodigo/node_modules/mysql/lib/protocol/sequences/Sequence.js:85:24)
at Query.ErrorPacket (/home/lucasponte/casadocodigo/node_modules/mysql/lib/protocol/sequences/Query.js:94:8)
Alguém tem alguma idéia do porque? Abaixo segue os trechos de códigos criticos do problema.
Método post para inserir um livro -- produtos.js
app.post("/produtos/salva",function(req,res) {
var livro = req.body;
var connection = app.infra.connectionFactory();
var produtosDAO = new app.infra.ProdutosDAO(connection);
produtosDAO.salva(livro,function(erros,resultado){
res.render("produtos/lista");
});
connection.end();
});
Método do ProdutoDAO para inserir um livro -- ProdutosDAO.js
ProdutosDAO.prototype.salva = function(livro,callback) {
this._connection.query('INSERT INTO livros SET ?', livro, callback);
}