Open fabiocasadossites opened 3 weeks ago
Você tem que fazer um try
validando a integridade do dado com o sqlalchemy. O erro levantado será IntegrityError
.
Vou deixar essa issue aberta para considerar isso em uma futura manutenção.
Na manutenção também deve ser adicionado um teste para o erro de integridade. O resultado esperado deve ser 409 CONFLICT.
Obrigado!
Quando você altera os dados no put ele pode trocar o username e email, porém você não valida se o que ele está atualizando tem no banco e pode duplicar, na verdade, não vai, pois o banco não vai deixar mais o que você falou na live de eu prefiro olhar antes de pular vale aqui?
Gostaria de ver como você faria essa validação.
` @router.put('/{user_id}', response_model=UserPublic) def update_user( user_id: int, user: UserSchema, session: Session, current_user: CurrentUser, ): if current_user.id != user_id: raise HTTPException( status_code=HTTPStatus.FORBIDDEN, detail='Not enough permissions' )
`