Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Params

Olá devs, tudo bem? Fiquei com dúvida sobre o que a instrutora disse relacionado aos problemas que retornam do "params", entendi a questão do number mas não o resto, poderiam me ajudar?

1 resposta
solução!

Olá João, tudo bem?

O findOne() permite que você passe um objeto where que pode conter várias condições de busca. Por exemplo, se você deseja buscar uma matrícula específica de um estudante, você pode fazer algo assim:

async pegaUmRegistro(where) {
  return dataSource[this.model].findOne({ where: { ...where } });
}

No seu controlador, você está recebendo os parâmetros da rota, que são estudanteId e id, e precisa garantir que eles estão no formato correto para a busca. Aqui estão os dois desafios mencionados:

  1. Conversão de Strings para Números: Os parâmetros que vêm da URL são strings, mas se os IDs no banco de dados são números, você precisará convertê-los. Isso pode ser feito usando parseInt() ou Number().

  2. Nomenclatura dos Campos: O campo estudanteId precisa ser convertido para o formato esperado pelo banco de dados, que é estudante_id. Você pode fazer isso manualmente antes de passar o objeto where para o método pegaUmRegistro().

Ou seja, vai precisar fazer a conversão desses campos para bater com o banco e não ter problemas. Essa conversão é feita na próxima aula, você vai entender melhor.

Espero ter ajudado.

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.Bons Estudos!