Pular para o conteúdo principal

Questão de Programação — Frameworks em Programação — IF-SP 2026

ProgramaçãoFrameworks em Programação
Código
qg710290
Banca
IF-SP
Órgão
IF-SP
Ano
2026
Nível
Superior
Cargo
Analista de Tecnologia da Informação
Para evolução de um sistema de compras on-line, uma funcionalidade de aplicação de descontos foi especificada. Parte dessa funcionalidade trata do cadastro de cupons de desconto. Um cupom pode ser atribuído por um valor fixo ou valor percentual, mas não ambos.Um desenvolvedor iniciou a implementação. Foi criado o seguinte formulário para cadastrar os cupons de desconto:Q.43.png 409×646Durante os testes, o desenvolvedor percebeu que, ao enviar os dados, nenhum erro é exibido e o formulário está sendo considerado válido, mesmo com ambos os campos preenchidos, por exemplo, com os seguintes dados:Q.43.1.png 407×132Por que o Django não exibe o erro de validação esperado?
  1. APorque clean_valor_percentual precisa retornar None para sinalizar erro.
  2. BPorque IntegerField e DecimalField não po dem ser validados no mesmo formulário.
  3. CPorque clean_valor_percentual é chamado antes de valor_fixo a ser validado, então ele ainda não está disponível em cleaned_data.
  4. DPorque o formulário deveria herdar de ModelForm, e não de Form.
Revelar gabarito e comentário

GabaritoC — Porque clean_valor_percentual é chamado antes de valor_fixo a ser validado, então ele ainda não está disponível em cleaned_data.

Link permanente: /questoes/qg710290