Exercício – Implementar django-crispy-forms

Concluído

Depois de ver o formulário criado, você poderá observar que a formatação não é a mesma do restante da página. Estamos usando o Bootstrap, e o formulário atualmente não é. Felizmente, há uma biblioteca que pode garantir que os formulários também usem o Bootstrap.

A biblioteca django-crispy-forms

A biblioteca django-crispy-forms aprimora ainda mais a forma como os formulários são gerados pelo Django. Vamos explorar como podemos usar a biblioteca para garantir que os formulários usem o Bootstrap.

Instalar a biblioteca

Assim como acontece com qualquer biblioteca do Python, instalamos a django-crispy-forms usando o pip.

  1. No Visual Studio Code, abra requirements.txt.

  2. Ao final do arquivo, adicione uma nova linha que indique:

    django-crispy-forms
    
  3. Abra uma nova janela do terminal selecionando Terminal>Novo Terminal.

  4. Instale todos os pacotes executando o seguinte comando:

    pip install -r requirements.txt
    

Registrar o aplicativo no Django e configurar o modelo

Qualquer coisa que o Django usa precisa ser registrado como um aplicativo ou um middleware. Como django-crispy-forms é um aplicativo, vamos mostrá-lo na lista INSTALLED_APPS.

  1. No Visual Studio Code, abra project/settings.py.

  2. Abaixo da linha que indica # TODO: Register crispy_forms, adicione o código a seguir para registrar django-crispy-forms.

    # TODO: Register crispy_forms
    'crispy_forms',
    
  3. Abaixo da linha que indica # TODO: Set template_pack, adicione o código a seguir para configurar a django-crispy-forms para usar o Bootstrap 4.

    # TODO: Set template_pack
    CRISPY_TEMPLATE_PACK = 'bootstrap4'
    

Atualizar o modelo para usar django-crispy-forms

A grande parte do trabalho incrível que django-crispy-forms faz é usando um filtro. Um filtro permite que você use uma variável em um modelo e transmita-a para outro manipulador ou processo. Em nosso caso, o filtro crispy converterá o formulário no modelo especificado, o Bootstrap 4.

  1. No Visual Studio Code, abra dog_shelters/templates/dog_form.html.

  2. Abaixo da linha que indica {# TODO: Load crispy_forms_tags #}, adicione o código a seguir para carregar o filtro ou a marca.

    {# TODO: Load crispy_forms_tags #}
    {% load crispy_forms_tags %}
    
  3. Substitua a linha que indica {{ form.as_p }} pelo código a seguir para usar o filtro crispy.

    {{ form | crispy }}
    

Testar o site

Com tudo instalado e atualizado, vamos testar o site.

  1. Salve todos os arquivos selecionando Arquivo>Salvar Tudo.

  2. No navegador, acesse http://localhost:8000/dog/register.

    Você verá que a página agora está usando o Bootstrap para o formulário.

    Captura de tela do formulário que usa o Bootstrap.

Você acabou de atualizar seu aplicativo para que o formulário use o Bootstrap.