#003 Proyecto de Facturación: auto-generar base de datos y registros con SQLAlchemy

in hive-188619 •  4 years ago 
Hola Comunidad Steemit hoy les traigo la tercera parte de este proyecto online personal que pienso ofrecer gratuitamente para Venezuela, más especificamente a comercios y emprendedores. Hoy construía las tablas de mi base de datos, con el ORM constructor para FLASK llamado SQLAlchemy.

1.png

Aquí les muestro uno de los modelos de mi base de datos en el sistema. Un modelo es simplemente un codigo, que al ejecutarse, creará automáticamente en la base de datos una tabla con el nombre especificado, en este caso ella será llamada OSWSCRIPT.

2.png

Columnas de la tabla

Esta tabla se encargará de almacenar en el sistema a los usuarios registrados; las columnas para sus datos serán las siguientes:

3.png

  • id: Permitirá almacenar un identificador único para el usuario. Por lo general este identificador se genera automáticamente al crearse los datos, pero por seguridad algunos programadores le colocan a los usuarios uno o mas identificadores únicos con códigos encriptados más complejos... por seguridad.
  • name: Almacenará el nombre completo del usuario, este dato no necesariamente es único, ya que muchas personas pueden tener el mismo nombre.
  • username: Este dato deberá ser único en el sistema, por lo general se usa para identificar con algún nombre más reducido que el colocado en name, para que otros usuarios puedan identificarlo mas fácilmente.
  • email: El correo también es un dato único, dependiendo del sistema y su orientación de mercado, este campo puede tener muchos usos; los más comunes son: recuperación de clave, bienvenida, registro, noticias del sistema, envío de datos de facturación o procesos internos.
  • password: Es la contraseña del usuario, además de ser única por razones obvias, también tiene la peculiaridad de ser encriptada. Por lo general se usan técnicas de encriptacion como MD5 o con métodos SHA-2, que permite convertir una típica clave de "1234" en un código indescifrable, sólo comprendido por el mismo código encriptador.
  • created_at: Es un campo estándar, suele crearte también otro campo llamado update_at, donde uno indica la fecha en que fue creado el registro, y el otro cuando ha sido actualizado.

Función init

Esta funcionalidad permitirá al código, iniciar y ordenar automáticamente las variables que van a ingresar con nuevos datos.

4.png

Función create_password

Cuando el usuario ingrese su contraseña desde el formulario, antes de registrarse en la base de datos primero pasará por esta función, que permitirá convertir lo que sea que el usuario ingrese, en un código MD5 o SHA-2 como ya mencioné.

5.png

Función verify_password

Ahora que tengamos una contraseña encriptada en nuestro usuario, será imposible para el ojo humano entenderla, e imposible para el código mismo intentar compararla si un usuario intenta entrar a su cuenta. Así que, cuando el usuario intente hacer login, esa clave pasará por esta función, que va a convertir esa clave en código encriptado, para luego compararla con la ya registrada en la base de datos. Y si es igual dará acceso al usuario.

6.png

Siempre que crees tus tablas, encriptalas con al menos con un código único, eso te permitirá hacer más seguro los registros a la hora de la consulta. también clasifica bien su contenido en caso de ser textos, números,etc, eso permite al sistema trabajar de manera mas rápida. Hasta la próxima <3


No olvides seguirme en las redes sociales para ver más contenido

Authors get paid when people like you upvote their post.
If you enjoyed what you read here, create your account today and start earning FREE STEEM!
Sort Order:  


Desde @steemitvenezuela apoyamos tu publicación con nuestro voto por ser un Contenido 100% Original.
Visita los siguientes link de interés:
1) Reportes diarios de curación.
2) Servidor Discord Comunidad Latina.
3) Normas de la Comunidad Latina.
4) COMUNIDAD LATINA WEB SITE OFICIAL.
Has sido recompensado por @acostaeladio por ser un
contenido 100% original con el apoyo del
Proyecto de Curación Comunitaria de Steem @steemcurator04
Buen trabajo, hagamos de Steem algo grande.

Click aquí para entrar a la COMUNIDAD LATINA