Validación de formulario en Django

Validación de formulario en Django

La validación de formulario es una tarea muy importante para cualquier aplicación web para ingresar datos válidos en la base de datos. Los usuarios de la aplicación no podrán insertar datos no válidos si los datos del formulario se validan antes de enviar. Django se llama marco basado en MVT (plantilla de vista de modelo) donde este marco realiza la tarea del controlador. Las tareas relacionadas con la base de datos se realizan por modelo y los datos se presentan a la plantilla utilizando la vista. Los campos de un formulario se generan en función del modelo particular que insertará datos en la base de datos Django después de la validación. El tipo de validación realiza un tipo de validación en el tipo de campo que se define en el modelo. Utilizando el es válida() La función es otra forma de verificar los datos del formulario, ya sean válidos o no después de enviar el formulario. Este tutorial le mostrará cómo se pueden insertar los datos en la base de datos Django después de validar el formulario.

Requisitos previos

Antes de practicar el guión de este tutorial, debe completar las siguientes tareas:

  1. Instale la versión 3+ de Django en Ubuntu 20+ (preferiblemente)
  2. Crear un proyecto Django
  3. Ejecute el servidor Django para verificar que el servidor funcione correctamente o no.

Configurar una aplicación Django

1. Ejecute el siguiente comando para crear una aplicación Django con nombre validationApp.

$ python3 gestionar.py startapp validationappapp

2. Ejecute el siguiente comando para crear el usuario que se utiliza para acceder a la base de datos Django. Si ha creado el usuario antes, no necesita ejecutar el comando.

$ python3 gestionar.py createuperuser

3. Agregue el nombre de la aplicación en el Instalado_app parte de py archivo.

Instalado_apps = [

'ValidationApp'
]

4. Crea una carpeta llamada plantillas dentro de validationApp carpeta y configure el plantillas ubicación de la aplicación en el PLANTILLAS parte de py archivo.

Plantillas = [

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

Validación de formulario Django

Debe escribir el código para los siguientes archivos para verificar la tarea de validación de formulario en Django.

  • modelos.py
  • administración.py
  • puntos de vista.py
  • formularios.py
  • cliente.html

Crea el modelo

Abre el modelos.py Archivo desde la carpeta de aplicaciones y agregue el siguiente script para crear la estructura de la clientes mesa. La tabla contendrá cuatro campos. Estos son los full_name, el correo electrónico, el contact_no y el customer_type. Aquí, el customer_type se crea por tipo de selección. Eso significa que el usuario debe seleccionar cualquier valor de la lista desplegable.

modelos.py

# Modelos de importación
de Django.Modelos de importación de DB
# Definir clase para la entrada del cliente
Cliente de clase (modelos.Modelo):
# Definir valores para el tipo de cliente
tipo = (
('pagado', 'pagado'),
('gratis gratis')
)
# Defina los campos para la tabla del cliente
Full_name = modelos.Charfield (max_length = 50)
correo electrónico = modelos.Emailfield ()
Contact_no = modelos.Charfield (max_length = 20)
customer_type = modelos.Charfield (max_length = 32, opciones = type, default = 'free')

Registre el modelo

Agregue el siguiente script en el administrador.py Archivo para registrar el Cliente modelo en la base de datos django para acceder a la clientes mesa del tablero administrativo de Django.

administración.py

# Importar el módulo de administración
de Django.administrador de importación de contribución
# Importar modelo de cliente
de .Los modelos importan al cliente
# Registre el modelo de cliente
administración.sitio.Registrarse (Cliente)

Crear formularios.py dentro de la carpeta de aplicaciones y agregue el siguiente script para definir la clase para crear el formulario basado en campos mencionados de el cliente modelo.

formularios.py

# Módulo de importación de formularios
de formularios de importación de Django
# Importar modelo de cliente
De ValidationApp.Los modelos importan al cliente
# Defina la clase para el formulario del cliente
Clase CustomerForm (formularios.ModeflaM):
Meta de clase:
modelo = cliente
Fields = ('full_name', 'correo electrónico', 'contact_no', 'customer_type')

Crear plantilla

Crear un archivo html llamado cliente.html con el siguiente script para mostrar el formulario previamente diseñado con el Ahorrar botón.

cliente.html





Formulario de registro de usuario


Formulario de inscripción al cliente


% csrf_token %
forma.as_p



Insertar datos después de la validación de formulario

Modificar el contenido del puntos de vista.py Archivo con el siguiente script. AddCustomer () la función se usa en el script para insertar un nuevo registro en el clientes tabla después de validar el formulario. Si no se envía el formulario, el formulario se cargará usando el cliente.html archivo. Si el formulario se envía con los datos válidos, se insertará un nuevo registro utilizando el ahorrar() función y un mensaje de éxito se imprimirá en el navegador con la opción de agregar otro registro.

puntos de vista.py

# Importar el módulo httpresponse
de Django.http.Respuesta import httpresponse
# Módulo de renderizado de importación
de Django.Rénero de importación de atajos
# Importar CustomerForm
De ValidationApp.Formularios Importar CustomerForm
# Definir la función para agregar la entrada del cliente
Def AddCustomer (solicitud):
Si solicite.método == "Post":
Form = CustomerForm (solicitud.CORREO)
# Si los datos del formulario son válidos o no
Si se forman.es válida():
intentar:
# Guarde los datos del formulario en la base de datos
forma.ahorrar()
# Defina el mensaje para el usuario
datos = ['

Los datos del cliente insertados correctamente.


Agrega otro']
# Devuelve la respuesta
return httpresponse (datos)
excepto:
aprobar
demás:
# Defina el objeto de formulario
form = customerForm ()
# Muestra el formulario de inscripción del cliente
devolver render (solicitud, 'cliente.html ', ' form ': form)

Modificar el URLS.py Archivo del proyecto Django con el siguiente script. Se han definido dos caminos en el script. 'cliente/' la ruta se utilizará para mostrar el formulario para agregar los nuevos registros de clientes. El 'administración/' la ruta se utilizará para mostrar el tablero de la administración de Django.

URLS.py

# Importar el módulo de administración
de Django.administrador de importación de contribución
# Módulo de ruta de importación
de Django.ruta de importación de URLS
# Vista de importación
Desde ValidationApsp Import Views
# Defina la ruta para el cliente y el administrador
urlpatterns = [
ruta ('cliente/', vistas.AddCustomer),
ruta ('admin/', administrador.sitio.URLS)
]

Ejecute el servidor Django y ejecute la siguiente URL desde el navegador para mostrar el formulario de inscripción del cliente. Si el Ahorrar El botón se presiona sin agregar ningún dato al formulario, luego aparecerá la página siguiente con errores para mantener vacíos los campos requeridos.

Si los datos no válidos se configuran para el campo de correo electrónico, aparecerá el siguiente error.

La siguiente información aparecerá si el formulario se envía con datos válidos. Si el usuario hace clic en el 'Agrega otro' Enlace, el formulario aparecerá nuevamente para insertar datos para el siguiente registro.

Conclusión

La forma de validar un formulario Django se mostró en este tutorial creando una aplicación simple de Django. Dicha aplicación ayudará a los desarrolladores de Django a comprender la importancia de la validación de la forma y podrían hacerlo correctamente.