Oi, Leonardo, tudo bem?
Você se refere ao seguinte código, certo?
const { id } = req.params;
Na verdade, o nome id
nesse código não se refere à coluna na tabela, e sim ao parâmetro da rota que nomeamos no arquivo pessoasRoute.js
:
router.get("/pessoas/:id", PessoaController.pegaUmaPessoa)
Ao escrevermos :id
, o Express entende que queremos obter aquele dado de alguma forma no controlador daquela rota. Assim, no arquivo PessoaController.js
, teremos o seguinte código:
static async pegaUmaPessoa(req, res) {
const { id } = req.params;
}
Nesse código, req.params
é um objeto com os parâmetros que definimos em pessoasRoute.js
, ou seja, é um objeto que possui uma propriedade chamada id
. A instrutora utilizou a sintaxe de desestruturação para obter a propriedade id
de req.params
.
O mesmo código acima poderia ser escrito para o seguinte:
static async pegaUmaPessoa(req, res) {
const id = req.params.id;
}
Mas, utilizando a sintaxe de desestruturação, podemos obter diversas propriedades ao mesmo tempo de um mesmo objeto. Então, se a rota tivesse parâmetros chamados "id" e "nome", por exemplo, poderíamos escrever o seguinte código:
static async pegaUmaPessoa(req, res) {
const { id, nome } = req.params;
}
Espero ter ajudado! Bons estudos :)