Validação do formulário em Django

Validação do formulário em Django

A validação do formulário é uma tarefa muito importante para qualquer aplicativo da web inserir dados válidos no banco de dados. Os usuários do aplicativo não poderão inserir dados inválidos se os dados do formulário forem validados antes de enviar. Django é chamado MVT (Model View Modelo) Framework, onde a tarefa do controlador é feita por essa estrutura em si. As tarefas relacionadas ao banco de dados são realizadas por modelo e os dados são apresentados ao modelo usando a visualização. Os campos de um formulário são gerados com base no modelo específico que inserirá dados no banco de dados Django após a validação. Um tipo de validação é feito pelo navegador baseado no tipo de campo que é definido no modelo. Usando o é válido() Função é outra maneira de verificar os dados do formulário, seja eles válidos ou não depois de enviar o formulário. Este tutorial mostrará como os dados podem ser inseridos no banco de dados Django depois de validar o formulário.

Pré -requisitos

Antes de praticar o script deste tutorial, você deve concluir as seguintes tarefas:

  1. Instale a versão Django 3+ no Ubuntu 20+ (de preferência)
  2. Crie um projeto Django
  3. Execute o servidor Django para verificar se o servidor está funcionando corretamente ou não.

Configure um aplicativo Django

1. Execute o seguinte comando para criar um aplicativo django nomeado ValidationApp.

$ python3 gerencia.Py StartApp ValidationApp

2. Execute o seguinte comando para criar o usuário que é usado para acessar o banco de dados Django. Se você criou o usuário antes, não precisa executar o comando.

$ python3 gerencia.py createSuperUser

3. Adicione o nome do aplicativo no Instalado_app parte de py arquivo.

Instalado_apps = [
..
'ValidationApp'
]

4. Crie uma pasta chamada modelos dentro de ValidationApp pasta e defina o modelos Localização do aplicativo no MODELOS parte de py arquivo.

Modelos = [

.. .
'Dirs': ['/home/fahmida/django_pro/validationApp/modelos'],
.. .
,
]

Validação do formulário de Django

Você deve escrever o código para os seguintes arquivos para verificar a tarefa de validação do formulário em Django.

  • modelos.py
  • admin.py
  • Visualizações.py
  • formas.py
  • cliente.html

Crie o modelo

Abra o modelos.py Arquivo da pasta do aplicativo e adicione o seguinte script para criar a estrutura do clientes mesa. A tabela conterá quatro campos. Estes são os full_name, email, contact_no e cliente_type. Aqui, o cliente_type é criado por tipo de seleção. Isso significa que o usuário deve selecionar qualquer valor na lista suspensa.

modelos.py

# Modelos de importação
de Django.Modelos de importação de banco de dados
# Defina a classe para entrada do cliente
Cliente de classe (modelos.Modelo):
# Defina valores para o tipo de cliente
tipo = (
('pago', 'pago'),
('grátis Grátis')
)
# Defina os campos para a tabela de clientes
Full_Name = Models.Charfield (max_length = 50)
email = modelos.Emailfield ()
contact_no = modelos.Charfield (max_length = 20)
Customer_type = modelos.Charfield (max_length = 32, escolhas = tipo, default = 'livre')

Registre o modelo

Adicione o seguinte script em o administrador.py Arquive para registrar o Cliente modelo no banco de dados Django para acessar o clientes Tabela do painel administrativo do Django.

admin.py

# Importar módulo de administrador
de Django.Contrible Import Admin
# Importar modelo de cliente
de .modelos importam cliente
# Registro modelo de cliente
admin.site.registro (cliente)

Criar formas.py Dentro da pasta do aplicativo e adicione o seguinte script para definir a classe para criar o formulário com base em campos mencionados de o cliente modelo.

formas.py

# Módulo de formulários de importação
de formas de importação de django
# Importar modelo de cliente
de ValidationApp.modelos importam cliente
# Defina a classe para o formulário do cliente
CLIENTE FORMULTRA (FORMURAS.Modelform):
Meta da classe:
modelo = cliente
campos = ('Full_Name', 'email', 'contact_no', 'Customer_type')

Criar modelo

Crie um arquivo HTML nomeado cliente.html com o script a seguir para exibir o formulário projetado anteriormente com o Salvar botão.

cliente.html





Formulário de registro do usuário


Formulário de entrada do cliente


% csrf_token %
forma.as_p



Insira dados após a validação do formulário

Modificar o conteúdo do Visualizações.py Arquivo com o seguinte script. Addcustomer () A função é usada no script para inserir um novo registro no clientes tabela depois de validar o formulário. Se o formulário não for enviado, o formulário será carregado usando o cliente.html arquivo. Se o formulário for enviado com os dados válidos, um novo registro será inserido usando o salvar() função e uma mensagem de sucesso será impressa no navegador com a opção de adicionar outro registro.

Visualizações.py

# Importar módulo HTTPRESPONS
de Django.http.Resposta Importar httpResponse
# Importar módulo de renderização
de Django.Atalhos de importação renderizar
# Importar o cliente de cliente
de ValidationApp.Formulário importar o clienteformForm
# Defina a função para adicionar a entrada do cliente
Defe AddCustomer (solicitação):
se solicitar.método == "post":
Formulário = Formulário (Solicitação.PUBLICAR)
# Se os dados do formulário forem válidos ou não
se forma.é válido():
tentar:
# Salve os dados do formulário no banco de dados
forma.salvar()
# Defina a mensagem para o usuário
dados = ['

Os dados do cliente inseridos corretamente.


Adicionar outro']
# Retorne a resposta
Retornar httproponse (dados)
exceto:
passar
outro:
# Defina o objeto de formulário
Formulário = CustomerForm ()
# Mostre o formulário de entrada do cliente
render renderização (solicitação, 'cliente.html ', ' form ': form)

Modifique o URLs.py Arquivo do projeto Django com o seguinte script. Dois caminhos foram definidos no script. 'cliente/' O caminho será usado para exibir o formulário para adicionar os novos registros do cliente. O 'Admin/' O caminho será usado para exibir o painel da administração Django.

URLs.py

# Importar módulo de administrador
de Django.Contrible Import Admin
# Módulo de caminho de importação
de Django.URLs Caminho de importação
# Importar visualização
De ValidationApp Import Views
# Defina caminho para o cliente e administrador
urlpatterns = [
caminho ('cliente/', visualizações.Addcustomer),
caminho ('admin/', admin.site.URLs)
]

Execute o servidor Django e execute o seguinte URL do navegador para exibir o formulário de entrada do cliente. Se o Salvar O botão é pressionado sem adicionar dados no formulário, então a página seguinte aparecerá com erros para manter os campos necessários vazios.

Se os dados inválidos estiverem definidos para o campo de email, o seguinte erro aparecerá.

As informações a seguir aparecerão se o formulário for enviado com dados válidos. Se o usuário clicar no 'Adicionar outro' Link, o formulário aparecerá novamente para inserir dados para o próximo registro.

Conclusão

A maneira de validar um formulário de django foi mostrada neste tutorial criando um aplicativo simples de django. O referido aplicativo ajudará os desenvolvedores de Django a entender a importância da validação da forma e eles poderiam fazê -lo corretamente.