1
resposta

Um ponto sobre a atividade

Para a alternativa: É necessário que o controle de produtos converta o valor do id para inteiro antes de passar para o modelo, para deletar com sucesso.

A resposta diz que: Nesse caso, não é necessário a conversão antes de passar para o modelo de produtos, pois vamos comparar com o valor presente no banco de dados.

Mas não seria uma boa prática realizar a sanitização deste input? Ou seja, se sei que o 'id' no banco de dados sempre será um inteiro, converto o input com o objetivo de impedir que o usuário passe um valor não numérico (e possibilite até mesmo uma SQL Injection).

1 resposta

No caso desse exemplo é de grande importância essa conversão para inteiro, porém creio que foi passado somente como forma didática. Quando desenvolvemos aplicação não utilizamos sql puro, geralmente utilizamos um ORM como GORM https://gorm.io/docs e o próprio ORM já faz os tratamentos para impedir esses tipos de ataques (SQL Injection e etc).