ReferenceError: C:\Users\t0063628\casadocodigo\app\views\produtos\form.ejs:4
2| <body>
3| <div class='erros'>
>> 4| <%if(errosValidacao){%>
5| <ul>
6| <%for(var i=0;i<errosValidacao.length;i++){%>
7| <li> <%=errosValidacao[i].param%> - <%=errosValidacao[i].msg%> </li>
errosValidacao is not defined
at eval (eval at compile (C:\Users\t0063628\casadocodigo\node_modules\ejs\lib\ejs.js:618:12), <anonymous>:11:7)
at returnedFn (C:\Users\t0063628\casadocodigo\node_modules\ejs\lib\ejs.js:653:17)
at tryHandleCache (C:\Users\t0063628\casadocodigo\node_modules\ejs\lib\ejs.js:251:36)
at View.exports.renderFile [as engine] (C:\Users\t0063628\casadocodigo\node_modules\ejs\lib\ejs.js:482:10)
at View.render (C:\Users\t0063628\casadocodigo\node_modules\express\lib\view.js:135:8)
at tryRender (C:\Users\t0063628\casadocodigo\node_modules\express\lib\application.js:640:10)
at Function.render (C:\Users\t0063628\casadocodigo\node_modules\express\lib\application.js:592:3)
at ServerResponse.render (C:\Users\t0063628\casadocodigo\node_modules\express\lib\response.js:1008:7)
at C:\Users\t0063628\casadocodigo\app\routes\produtos.js:36:8
at Layer.handle [as handle_request] (C:\Users\t0063628\casadocodigo\node_modules\express\lib\router\layer.js:95:5)
Código:
html>
<body>
<div class='erros'>
<%if(errosValidacao){%>
<ul>
<%for(var i=0;i<errosValidacao.length;i++){%>
<li> <%=errosValidacao[i].param%> - <%=errosValidacao[i].msg%> </li>
<%}%>
</ul>
<%}%>
</div>
<form action="/produtos" method="post">
<div>
<label for="titulo">Titulo</label>
<input type= "text" id = "titulo" name="titulo" placeholder="coloque o titulo"/>
</div>
<div>
<label for="descricao">Descricao</label>
<textarea cols="20" rows="10" id ="descricao" name = "descricao" placeholder="fale sobre o livro"></textarea>
</div>
<div>
<label for="preco">preco</label>
<input type= "text" id = "preco" name = "preco" placeholder="140.25"/>
</div>
<input type="submit" value="gravar"/>
</form>
</body>
</html>
Código;
module.exports = function(app){
app.get('/produtos',function(req,res){
var connection = app.infra.connectionFactory();
var produtosDAO = new app.infra.ProdutosDAO(connection);
produtosDAO.lista(function(erros,resultados){
res.format({
html:function(){
res.render('produtos/lista',{lista:resultados});
},
json:function(){
res.json(resultados);
}
});
});
connection.end();
//consulta
});
app.get('/produtos/form',function(req,res){
res.render('produtos/form',{errosValidacao:{}});
console.log("cheguei aqui");
});
app.post ('/produtos',function(req,res){
var produto = req.body;
req.assert('titulo', 'Titulo é obrigatório').notEmpty();
req.assert('preco','Formato inválido').isFloat();
var erros = req.getValidationResult();
if(erros) {
res.render('produtos/form',);
return;
}
console.log(produto);
var connection = app.infra.connectionFactory();
var produtosDAO = new app.infra.ProdutosDAO(connection);
produtosDAO.salva(produto,function(erros,resultados){
console.log(erros);
res.redirect('/produtos');
});
});
app.get('/produtos',function(){
var connection = app.infra.connectionFactory();
var produtosDAO = app.infra.ProdutosDAO(connection);
var produto = produtoDAO.carrega(id,callback);
if(produto){
produtosDAO.remove(produto,callback);
}
});
}