
Dando sequencia no nosso sistema de cadastro e caso não tenha visto as partes anteriores, segue o link:
Hello world em Python usando Django
Criando um sistema de cadastro com Django – Parte 1
Criando um sistema de cadastro com Django – Parte 2
Neste post vamos realizar a parte de cadastro dentro do nosso banco de dados, segue abaixo as partes que vamos abranger neste post.
1 – Configurar o formulário para envio das informações que o usuário vai digitar para o cadastro.
2 – Preparar o modelo a ser utilizado pelo banco de dados.
3 – Configurar a view para receber as informações do form e salvar no banco de dados.
4 – Listar os usuários do banco.
Configurar o formulário para envio das informações que o usuário vai digitar para o cadastro.
Vamos no site do bootstrap e pegar um formulário para incluir no nosso projeto, segue abaixo o form que vamos utilizr.

Depois de copiar o código do formulário clicando no icone da prancheta, cole ele logo após o seu navbar na página de cadastro, ficando assim:

Vamos colocar um container para melhorar a estilização, usaremos a tag <div class=”container-sm”> antes da tag <form> e fechamos com <div> depois da tag </form>.
E vou fazer o mesmo com aquele texto hello world dentro do h1 e vou mudar o texto para cadastro, sendo que vou mover ele para antes da div do form, ficando tudo assim:

Agora sim vamos editar o nosso form e preparar ele para o envio das informações.
Vou deixar os campos do formuláro somente com nome, email e setor e também vamos colocar o atributo name dentro dos inputs com o seus respectivos nomes, ficando assim o nosso form editado:

Agora vamos preparar o form para o envio, adicionano o action e o metodo post, devemos incluir também após a tag de abertura do form o csrf_token, necessário para envio de informações de um form para uma página interna.

Preparar o modelo a ser utilizado pelo banco de dados.
Vamos abrir o arquivo models.py dentro da pasta da aplicação e vamos preparar o nosso modelo.

Esse modelo vai ser preparado e será criado no banco de dados uma tabela com esse nome e essas colunas, caso você queira saber mais sobre os tipos de dados que pode ser utilizados vou deixar o link abaixo:
Tipos de dados: clique aqui!
Após a criação do modelo vamos executar os comandos a seguir no Powsershell, abrar com control + j:
python manage.py makemigrations

python manage.py migrate

Feito isso vamos instalar a extensão sqlite view para ver como ficou o nosso banco.

Vamos abrir o banco e visualizar nossa tabela, ela vai estar junto com outras que são nativas do framework.

Conseguimos ver a nossa tabela e as colunas criadas.
Configurar a view para receber as informações do form e salvar no banco de dados.
Agora vamos preparar a nossa view de usuários para receber as informações que serão enviadas do formulário na página de cadastro.
Vamos editar a nossa função def usuarios, ficando assim:

Rode o servidor e teste o formulário, após clicar em salvar no formulário, visualize a sua tabela no banco e verifique se criou o usuário informado.

Listar os usuários do banco.
Agora vamos fazer uma alteração na função def usuarios para conseguir listar os usuários logo após o envio de um novo usuário.
E depois vamos incluir um if para que quando a rota seja acessada diretamente ele somente exiba os usuários no banco, sem a necessidade de executar o bloco que salva no banco, ficará como a seguir:

Onde á variável usuarios esta fazendo uma consulta ao modelo e solicitando todos os objetos do banco e o if verifica se no carregamento da rota foi feito com um post ou não, caso seja feito com um method post ela vai salvar as informações recebidas no banco.
Em seguida vamos criar uma tabela no arquivo html da rota usuarios e colocar um for para percorrer a variável que recebeu as informações do banco, ficando assim:

Agora você consegue acessar a rota usuários diretamente e visualizar os usuários cadastrados.
Vamos continuar o nosso sisteminha em um próximo post: