1
resposta

Personalizando mensagens

Eu fiz o passo a passo, não tive nenhum erro porém após compilar as mensagens e subir a aplicação não tive mudança nenhuma nas mensagens em português.

Meu código: https://github.com/karlgama/django-api3

1 resposta

Olá Kaique, tudo bem com você?

Peço desculpas pela demora no retorno.

Realizando alguns testes com o código apresentado, notei que será necessário realizarmos uma modificação no retorno do método dispatch da classe MatriculaViewSet presente no arquivo escola/views.py. Será necessário retirarmos uma chamada do método dispatch na função super(), o método deverá ser declarado da seguinte forma:

@method_decorator(cache_page(20))
    def dispatch(self, *args, **kwargs):
        return super(MatriculaViewSet,self).dispatch(*args,**kwargs)

Quanto a customização da mensagem, na aula foi realizado a customização da seguinte mensagem de erro: This field is required, essa mensagem de erro é apresentada quando deixamos de informar um determinado campo obrigatório.

Para modificá-la, basta seguir os passos abaixo.

  • Abra o arquivo de idiomas, localizado no seguinte endereço locale\pt_BR\LC_MESSAGES\django.po

  • Após abrir o arquivo, pressione ctrl + f para abrir o campo de pesquisa no arquivo e pesquise pela seguinte frase: This field is required. Pressione enter para ser direcionado para o campo.

  • Abaixo do resultado da pesquisa conterá uma variável de nome msgstr e a frente dela uma string vazia. Nessa string adicione sua mensagem personalizada, como no exemplo abaixo:

      msgstr "Opa, deu ruim. Este campo é obrigatório"
  • Salve o arquivo django.po.

  • Nesse momento faça a compilação do arquivo de idioma alterado, basta executar o comando abaixo no terminal aberto na pasta do projeto.

      python manage.py compilemessages -l pt_BR
  • Inicie o servidor da API com o comando python manage.py runserver

  • Realize o teste enviando uma requisição do tipo POST sem informar um dos campos que são obrigatórios, nesse momento sua mensagem personalizada será apresentada.

    Imagem contando a apresentação do painel de requisições do programa Postman, a cor de fundo é branca, nesta imagem é apresentado uma configuração para uma requisição do tipo POST, o usuário deixa de informar o campo rg para o cadastro de um aluno e recebe como resposta no painel de log a seguinte mensagem de erro: "Opa, deu ruim. Este campo é obrigatório", essa mensagem está destacada com um retângulo vermelho. Final da transcrição.

Peço que teste o proposto acima, caso tenha dúvidas fico à disposição.

Não hesite em voltar ao fórum para continuar aprendendo e interagindo com a comunidade.

Abraços e bons estudos!

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