1
resposta

Erro no código de cancelaPessoa

O processo de controle transacional não estava funcionando com o código apresentado no vídeo, quando executamos conforme esta explicado, realmente o campo Matriculas.status não é atualizado (pois o erro ocorre nesta linha), porém o campo Pessoas.ativo estava sendo atualizado para 0 (zero), tornando assim o controle transacional ineficaz.

O problema estava ocorrendo por que o parâmetro transaction não é um terceiro parâmetro de update, mas sim um segundo parâmetro dentro de where. Não sei se ficou claro, mas segue o antes e depois para entenderem melhor:

Antes:

await database.Pessoas
          .update({ ativo: false }, { where: { id: Number(estudanteId) } }, { transaction: transacao })

Depois:

await database.Pessoas
          .update({ ativo: false }, { where: { id: Number(estudanteId) }, transaction: transacao })
1 resposta

Oi Eduardo, legal essa solução, se eu ver alguém com um problema nesse sentido, vou informar seu tópico como solução. Obrigado por compartilhar aqui.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software