Optimiza el flujo de aprobación de préstamos en Flask moviendo las reglas de negocio desde valores fijos a una tabla persistente. Con esta guía, dominarás cómo insertar y consultar reglas en un datastore desde controladores y modelos, manteniendo exactamente el mismo resultado de cálculo pero con una arquitectura más limpia y escalable.
¿Qué objetivo tiene el ejercicio con reglas de negocio en Flask y datastore?
El propósito es persistir las reglas de negocio que hoy están codificadas en los controladores y consultarlas dinámicamente. En lugar de usar rangos fijos en memoria, se crearán registros en una tabla llamada reglas en el datastore. Así, el método que calcula el préstamo aprobado seguirá devolviendo el mismo valor, pero ahora leerá desde la base de datos.
- Se trabaja dentro de la carpeta My App.
- En el proyecto existen models, APIs, admin views y views.
- El archivo clave es views, donde están los controladores principales con la notación de Flask que expone rutas web.
¿Cómo ubicar archivos clave: My App, views y modelos?
- Entra a My App y abre el archivo views con el editor que prefieras, por ejemplo VIM.
- Revisa los métodos del archivo: están decorados con la notación de Flask para rutas.
- Ve también al archivo de modelos donde está la clase reglas al final.
¿Qué hace el método registrar y el método de hacer la solicitud?
- registrar: almacena la información del formulario enviado por el usuario.
- hacer la solicitud: ejecuta la lógica que retorna el valor del préstamo aprobado según reglas basadas en salario y rangos definidos.
¿Cómo persistir y consultar reglas en la tabla reglas del datastore?
El reto consiste en registrar las reglas en el datastore y reemplazar el uso de valores planos por consultas a la tabla reglas.
- Usa el controlador insertar reglas para poblar la tabla con todas las reglas de negocio.
- En modelos, implementa la clase reglas con los mapas para insertar y listar.
- Completa el código de inserción con los parámetros previstos y el retorno indicado.
- Implementa el listado para recuperar todas las reglas desde el datastore.
- Ajusta el método de hacer la solicitud para que consulte la tabla reglas en lugar de usar rangos fijos.
- Verifica que el resultado del cálculo del préstamo aprobado sea idéntico al actual.
¿Qué parámetros y rangos se almacenan como reglas?
- Reglas basadas en salario del solicitante.
- Rangos y umbrales como “ochocientos mil” y “un millón”.
- Valores aprobados que se asignan según el rango en el que cae el salario.
¿Qué conceptos y habilidades se practican en el proyecto con Flask?
Este ejercicio fortalece competencias de diseño y persistencia, al tiempo que mejora la mantenibilidad del código.
- Controladores en Flask: rutas web definidas con la notación de la librería para exponer métodos.
- Refactor de reglas de negocio: de valores hardcodeados a una tabla reglas en datastore.
- Patrón modelo-controlador: lógica de inserción y consulta en modelos, cálculo en controladores.
- CRUD básico: insertar y listar reglas para alimentar la lógica del préstamo.
- Lectura de formularios: captura de datos en el método registrar.
- Navegación del proyecto: uso de carpetas My App, views, models, APIs y admin views.
- Productividad en edición: apertura del archivo con VIM u otro editor.
- Trabajo con documentación: apoyo en ejemplos existentes para completar las funciones.
- Proyección de integración: próxima incorporación de Cloud Storage para almacenamiento adicional.
¿Te gustaría comentar cómo modelarías los rangos en la tabla reglas o qué campos agregarías para futuras ampliaciones? Comparte tus ideas y preguntas aquí abajo.