Olá, após a aula 03 de Encapsular as rotas, está apresentando erro 500 em todo direcionamento para /livros. Tentei colocar manualmente novamente o /livros, porém o problema volta a ocorrer. revisei os encapsulamentos, e somente ocorre para a rota /livro. Segue o código utilizado:
rotas.js
const LivroControlador = require('../controladores/livro-controlador');
const livroControlador = new LivroControlador();
const BaseControlador = require('../controladores/base-controlador');
const baseControlador = new BaseControlador();
const rotasBase = BaseControlador.rotas();
const rotasLivro = LivroControlador.rotas();
app.get(rotasBase.home, baseControlador.home());
app.get(rotasLivro.lista, livroControlador.lista());
app.get(rotasLivro.cadastro, livroControlador.formularioCadastro());
app.get(rotasLivro.edicao, livroControlador.formularioEdicao());
app.post(rotasLivro.lista, [
check('titulo').isLength({ min: 5 }).withMessage('O Titulo precisa ter no mínimo 5 caracteres!'),
check('preco').isCurrency().withMessage('O preço precisa ter um valor monetário válido!')
], livroControlador.cadastra());
app.put(rotasLivro.lista, livroControlador.edita());
app.delete(rotasLivro.delecao, livroControlador.remove());
livro-controlador.js
class LivroControlador {
static rotas() {
return {
lista: '/livros',
cadastro: '/livros/form',
edicao: '/livros/form/:id',
delecao: '/livros/:id'
};
}
lista(){
return function(req, resp) {
const livroDao = new LivroDao(db);
livroDao.lista()
.then(livros => resp.marko(
require('../views/livros/lista/lista.marko'),
{
livros: livros
}
))
.catch(erro => console.log(erro));
};
}