Como o formulário HTML pode ser usado para obter dados do usuário, ler os valores de entrada e imprimir os valores no navegador usando Django é mostrado neste tutorial.
Pré-requisitos:
Você tem que criar um projeto Django antes de criar o formulário Django. Para criar um novo projeto Django e ir para a pasta do projeto, execute os seguintes comandos:
$ django-admin startproject django_pro$ cd django_pro
Para criar os arquivos necessários e aplicar migrações para o projeto, execute o seguinte comando:
$ python3 manage.py migrarPara verificar se o servidor Django está funcionando corretamente ou não, execute o seguinte comando:
$ python3 manage.py runserverPara criar o formapp sob django_pro projeto, execute o seguinte comando:
$ python3 manage.py startapp formappCrie um formulário HTML usando Django:
Abra o Visualizações.py arquivo que está dentro formapp pasta e modificar seu conteúdo com o seguinte conteúdo. O script a seguir irá verificar se o formulário foi enviado ou não. Se o formulário for enviado, o valor do solicitação.método será POST e solicitação.PUBLICAR.obter() método é usado para ler seus valores enviados. O é válido() função irá verificar se os dados do formulário são válidos ou não. Se esta função retornar verdadeiro, então uma mensagem de sucesso com os dados do usuário válido será impressa no navegador, caso contrário, a mensagem de erro que aparece no campo específico do formulário será exibida. Fora isso, o render () método é usado para carregar o formulário no navegador e HttpResponse () método é usado para enviar a resposta do servidor para o navegador após o envio do formulário.
# Importe os módulos necessáriosde django.importação de atalhos renderização
de formapp.importação de formulários StudentForm
de django.http import HttpResponse
def form_request (solicitação):
# Verifique se o formulário foi enviado ou não
se pedido.método == 'POST':
aluno = StudentForm (pedido.PUBLICAR)
# Verifique se os dados do formulário são válidos ou não
se estudante.é válido():
# Leia os valores enviados
nome = pedido.PUBLICAR.get ("nome")
email = pedido.PUBLICAR.get ("email")
username = request.PUBLICAR.get ("nome de usuário")
# Mesclar os valores
data = ['Seu registro foi completado com sucesso.
', 'Nome nome, '
',' Email: ', email,'
',' Nome de usuário: ', nome de usuário]
# Retorna os valores do formulário como resposta
retornar HttpResponse (dados)
senão:
# Exibir o formulário html
aluno = StudentForm ()
retornar render (pedido, "formulário.html ", 'formulário': aluno)
Crio formulários.py dentro de formapp pasta e adicione o seguinte conteúdo. O seguinte script criará um formulário de quatro campos. O nome campo é definido para receber os dados do caractere e pode ter 40 caracteres de comprimento. O o email campo é definido para receber qualquer endereço de e-mail válido usando os dados do caractere e pode ter 50 caracteres de comprimento. O nome do usuário campo é definido para receber os dados do caractere, e pode ter 20 caracteres de comprimento. O senha campo é definido para receber os dados de caractere e pode ter um mínimo de 10 caracteres e um máximo de 20 caracteres de comprimento. O formulários.PasswordInput widget é usado para o campo de senha para ocultar o conteúdo do campo de senha.
# Importar módulos de formuláriode formulários de importação django
# Crie uma classe para definir os campos do formulário
classe StudentForm (formulários.Forma):
nome = formulários.CharField (label = "Nome completo", max_length = 40)
email = formulários.EmailField (label = "Email", max_length = 50)
username = forms.CharField (label = "Username", max_length = 20)
senha = formulários.CharField (label = "Senha", min_length = 10, max_length = 20, widget = formulários.PasswordInput)
Crie uma pasta chamada modelos dentro de formapp pasta. Vou ao MODELOS Seção de as configurações.py arquivo e definir a localização do modelo pasta para o DIRS propriedade.
definições.py
MODELOS = ['DIRS': ['/ home / fahmida / django_pro / formapp / templates']
,
]
Crio Formato.html dentro de modelo pasta com o seguinte conteúdo.
% csrf_token% é usado no script HTML para evitar ataques CSRF (Cross-Site Request Forgeries). Formato.as_p irá carregar o formulário Django que é projetado pelo formulários.py Arquivo. Quando o Enviar botão for pressionado, os dados do formulário serão enviados ao servidor.
Abra o urls.py de django_pro pasta e modificar o conteúdo com o seguinte conteúdo.
Aqui o 'registro/' caminho é usado para carregar o formulário no navegador.
# Importe os módulos necessáriosde django.caminho de importação de urls
a partir de visualizações de importação formapp
# Método de chamada para exibir o formulário
urlpatterns = [
caminho ('registrar /', visualizações.form_request)
]
Abra qualquer navegador e digite a seguinte URL para carregar o formulário de registro do usuário no navegador.
http: // localhost: 8000 / register
A seguinte saída aparecerá após executar o URL. A validação do campo vazio, o valor de comprimento máximo dos campos de nome, e-mail e senha e os valores de comprimento mínimo e máximo do campo de senha serão verificados após o envio do formulário.
O resultado a seguir mostra que o campo de senha é inválido. De acordo com o formulário, o comprimento do valor da senha deve ser de 10 a 20 caracteres. 5 caracteres foram fornecidos como entrada no seguinte formulário. Para isso, o formulário está mostrando a mensagem de erro.
Depois de inserir a saída válida em todos os campos do formulário, a seguinte saída aparecerá.
Conclusão:
A maneira de criar um formulário de registro de usuário muito simples no aplicativo Django foi mostrada neste tutorial. Django tem muitos métodos para criar diferentes tipos de campos do formulário, como CharField (), EmailField (), TextFiled, etc. A tarefa de validação do formulário torna-se muito mais fácil quando o formulário é projetado pelo Django form.