Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

[RESOLVIDO] Alterei a func cadastra e edita pois não estavam validando

Como era:

cadastra() {
        return function(req, resp) {
            console.log(req.body);
            const livroDao = new LivroDao(db);

            const erros = validationResult(req);

            if (!erros.isEmpty()) {
                return resp.marko(
                    templates.livros.form,
                    { 
                        livro: {}, 
                        errosValidacao: erros.array()
                    }
                );
            }

            livroDao.adiciona(req.body)
                    .then(resp.redirect(LivroControlador.rotas().lista))
                    .catch(erro => console.log(erro));
        };
    }

Como ficou: Adicionei no livro o body livro: req.body

cadastra() {
        return function(req, resp) {
            console.log(req.body);
            const livroDao = new LivroDao(db);

            const erros = validationResult(req);

            if (!erros.isEmpty()) {
                return resp.marko(
                    templates.livros.form,
                    { 
                        livro: req.body, 
                        errosValidacao: erros.array()
                    }
                );
            }

            livroDao.adiciona(req.body)
                    .then(resp.redirect(LivroControlador.rotas().lista))
                    .catch(erro => console.log(erro));
        };
    }

E adicionei na rota de editar também, pois quando editava não fazia a validação

Em livro-rotas:

.put(Livro.validacoes(), livroControlador.edita());

No edita():

edita() {
        return function(req, resp) {
            console.log(req.body);
            const livroDao = new LivroDao(db);

            const erros = validationResult(req);

            if (!erros.isEmpty()) {
                return resp.marko(
                    templates.livros.form,
                    { 
                        livro: req.body, 
                        errosValidacao: erros.array()
                    }
                );
            }

            livroDao.atualiza(req.body)
                    .then(resp.redirect(LivroControlador.rotas().lista))
                    .catch(erro => console.log(erro));
        };
    }
3 respostas

Bom dia, Valéria! Como vai?

Obrigado por compartilhar a sua solução com a gente! É com participações como essa sua que fazemos da Alura uma plataforma cada vez melhor! Continue assim!

Espero que esteja curtindo e aproveitando ao máximo todo conteúdo dos cursos de Node!

Grande abraço e bons estudos, minha aluna!

solução!

Bom dia,Vou bem, obrigada.Sim, estou gostando bastante das suas aulas de NodeJS, achei você bem carismático e com uma ótima didática!!

Que bom que está gostando, Valéria! Fico feliz! Obrigado também pelo feedback! E lembre-se, sempre que precisar de alguma ajuda, tirar alguma ajuda ou compartilhar algo novo que vc tenha aprendido, é só mandar aqui no fórum da Alura!

Agora é seguir em frente rumo à luz do conhecimento, minha aluna!

Grande abraço e bons estudos!