Para definir form para movimientos con Python, tienes que tener claro el funcionamiento de Flask, sus elementos y dependencias que lo acompañan, tal como Flask y WTForms, que son vitales para el desarrollo de programas de código cuyo objetivo es crear una app que registre ingresos y gastos de una cuenta.
¿Qué encontrarás en este post?
ToggleCómo definir form para movimientos con Python
El proceso para definir form para movimientos con Python se realiza a partir de los procesos que establece la librería de WTForms del lenguaje de programación Python. En la documentación oficial se requiere crear el formulario a partir de una clase normal del lenguaje, en este caso será nombrada como MovimientosForm.
Importar librerías
Antes de establecer la clase y todas las variables que la acompañan, debes tener en cuenta que deberás importar todas las librerías y ficheros necesarios para el desarrollo del formulario. En principio, los más importantes corresponden a las variables que configurarán los campos de cada uno de los formularios; estos son DateField, DecimalField, HiddenField, RadioFeld, StringField y SubmitField. Así como otros elementos que corresponden al trabajo con el usuario, es decir, DateRequired.
#importar librerías y ficheros
from wtforms import DateField, DecimalField, HiddenField, RadioFeld, StringField, SubmitField
from wtforms.field.html5 import TimeField
🔴 ¿Quieres Aprender a Programar con Python? 🔴
Descubre el Full Stack Jr. Bootcamp - Aprende a Programar desde Cero de KeepCoding. La formación más completa del mercado y con empleabilidad garantizada
👉 Prueba gratis el Bootcamp Aprende a Programar desde Cero por una semanafrom wtforms.validators import DateRequired, Length
De esta manera, ya puedes empezar definir la clase y las variables, después de importar las librerías.
Definir la clase y variables
Para definir la clase, debes tener en cuenta la estructura del lenguaje de Python. A esta clase se le pasa, como argumento, el parámetro FlaskForm, el cual establece la forma y fondo del formulario próximo a realizar.
Después de haber definido la clase, empezaremos por traer cada una de las variables debajo de la clase. Estas variables representan cada uno de los campos que llevará todos los valores importantes para el formulario.
En un principio, como deberás poner el ID, tendrás que hacerlo con el método de HiddenField, para que al usuario no le sea visible esta información. Después de esto, tendrás que establecer la variable de la fecha, que estará definida con el método DataField y se le pasará la fecha y los validators o validadores, que son de tipo DataRequired. Se establecerá el mensaje “debes indicar una fecha”.
Para la hora, entonces, deberás establecer el método TimeField.
Después, para los conceptos de la lista de movimiento también tendrás que poner un validator que invite al usuario a otorgar información con el método DataRequired. Aquí mismo configurarás una longitud de caracteres por medio de dos variables: min y max.
Para el ingreso y gasto, el método RadioField te permitirá entregar dos opciones que pueden ser escogidas por el usuario con el método choices.
Por último, para la cantidad o el valor de cada movimiento, establecerás el método DecimaField para que el usuario ingrese los valores del movimiento.
Representación del proceso para definir form para movimientos con Python
A continuación, te traemos la representación, en forma de código, para representar el proceso para definir form para movimientos con Python:
#definir la clase para form
class MovimientosForm (FlaskForm):
id = HiddenField()
fecha = DateField (“Fecha”, validators = [DataRequired (message = “Debes indicar una fecha”)])
hora = TimeField (“Hora”)
concepto = StringField(
“Concepto”, validators = [
DataRequired (message = “Debes indicar un concepto”),
Length (min = 3, max = 25, message = “Debe tener entre 3 y 25 caracteres”)
])
ingreso_gasto = RadioField (
validators = [DataRequired (message = “Debes indicar si es un gasto o un ingreso”)[
choices = [(‘I’, ‘Ingreso’), (‘G’, ‘Gasto’)])
cantidad = DecimaField (
“Cantidad”, validators = [DataRequired (message = “Debes indicar un precio”)],
places = 2)
submit = SubmitField (“Guardar”)
De esta manera, ya sabes cómo definir form para movimientos con Python.
Si bien con este ejercicio práctico sobre cómo definir form para movimientos con Python has practicado y has ejercitado tus habilidades, aún falta mucho por aprender si tu objetivo es llegar a convertirte en un profesional del código.
Por eso, si quieres seguir avanzando en el mundo de Python con ayuda de un programador experto y más ejercicios prácticos, te recomendamos matricularte en nuestro Aprende a Programar desde Cero Full Stack Jr. Bootcamp. Te formarás de manera práctica y teórica en muy pocos meses de la mano de los mejores profesionales del sector. ¡Anímate a apuntarte pronto y sigue programando!