atualizado

This commit is contained in:
Luiz F Picolo 2024-11-28 14:59:42 -04:00
parent a3cacc8a3e
commit 578b87e9f5
5 changed files with 29 additions and 9 deletions

View File

@ -1,13 +1,15 @@
const Produto = require('../models/produto');
const produtos = new Produto();
const listar = function(req, res){
res.render('produtos/listar', {
title: "Titulo"
produtos: produtos.listar()
})
}
const visualizar = function(req, res){
const id = req.params.id
res.render('produtos/visualizar', {
titulo: id
produto: produtos.buscarPorID(req.params.id)
})
}

15
models/produto.js Normal file
View File

@ -0,0 +1,15 @@
class Produto {
listar(){
return [
{id: 1, nome: 'Produto 1', preco: '20.00', imagem: 'https://picsum.photos/200/300'},
{id: 2, nome: 'Produto 2', preco: '30.00', imagem: 'https://picsum.photos/200/300'},
{id: 3, nome: 'Produto 3', preco: '40.00', imagem: 'https://picsum.photos/200/300'},
]
}
buscarPorID(id){
return this.listar().find(produto => produto.id == id)
}
}
module.exports = Produto

View File

@ -6,5 +6,4 @@ router.get('/', listar);
router.get('/buscar', buscar);
router.get('/:id', visualizar);
module.exports = router;

View File

@ -14,9 +14,11 @@
<input type="submit" value="buscar">
</form>
<ul>
<li><a href="/produtos/produto-1"> Produto 1</a></li>
<li><a href="/produtos/produto-2"> Produto 2</a></li>
<li><a href="/produtos/produto-3"> Produto 3</a></li>
<% produtos.forEach((produto) => { %>
<li>
<a href="/produtos/<%= produto.id %>"><%= produto.nome %></a>
</li>
<% }) %>
</ul>
</body>
</html>

View File

@ -7,6 +7,8 @@
<title>Produtos</title>
</head>
<body>
<h1><%= titulo %></h1>
<h1><%= produto.nome %></h1>
<img src="<%= produto.imagem %>" alt="" srcset="">
<p>R$ <%= produto.preco %></p>
</body>
</html>