Flask Dashboard Argon: aprenda Flask codificando un panel de administración

Hola codificador,

El objetivo de este artículo es ayudar a los principiantes a codificar sus propios Tablero de matraces mejorado con base de datos SQLite, ORM y autenticación, además de una interfaz de usuario utilizable. La aplicación resultante se publica en Github, bajo licencia MIT y el conjunto completo de funciones se enumera a continuación:

  • Base de datos SQLite/PostgreSQL, SQLAlchemy ORM
  • Estructura modular a través de planos.
  • Flujo de autenticación basado en sesión (inicio de sesión, registro)
  • Hashing de contraseña a través de Passlib

¿Escapado? Puede consultar el página del tablero o el Github fuentes

Flask Dashboard: plantilla de código abierto con diseño Argon.

El entorno


Para codificar y actualizar nuestra aplicación en Matraz necesitamos al menos Python y Flask instalados.

pip install Flask

Para probar la instalación, abra una consola de Python y escriba:

$ python
$ >>> from flask import Flask
$ >>>

Si su terminal se llena de errores, Flask está listo para inyectar esteroides en nuestra aplicación.

Estructura del tablero


Debido a que Flask es un gran marco, un desarrollador tiene total libertad cuando crea una nueva aplicación. Todo el código se puede guardar en un archivo o se puede dividir lógicamente en archivos y directorios. La estructura elegida se muestra a continuación:
Flash Dashboard Argon - Estructura de la aplicación

Podemos destacar fácilmente los archivos modulares divididos por la parte funcional (vistas, modelos), estática y plantillas. De todos modos, si esta estructura no se ajusta a su gusto, no dude en actualizarla en consecuencia.

El diseño (de argón)


Para tener un producto usable al final, necesitamos un buen diseño integrado en nuestra futura aplicación. Personalmente, soy un gran admirador del equipo detrás de este diseño porque lanzan productos utilizables bajo la licencia MIT. El tablero de Argon no es una excepción.

Flask Dahboard Argon - Pantalla principal

Acceso a la base de datos


Cualquier tablero debe tener una base de datos detrás para la autenticación y la información inyectada en los gráficos. En esta sección, la aplicación usa la biblioteca Flask-SQLAlchemy para evitar escribir oraciones SQL sin procesar como “seleccionar * de ..”.
Veamos cómo ayuda a SQLAlchemy a seleccionar datos de la base de datos:

$ flask shell
$ >>> from app.models import User
$ >>> User.query.all() 
<User 1>

los User.query.all() devolver todas las filas de la tabla como objetos y manipular la información para eliminar, crear y actualizar se convierte en una tarea bastante fácil.

Flujo de autenticación


Como dije, la aplicación tiene las baterías incluidas y viene con inicio de sesión, cierre de sesión y registro listo para usar. La implementación de la autenticación en una aplicación de Flask puede llevar mucho tiempo si no se comprende completamente el núcleo de Flask.

Mejoras de caparazón


Esta aplicación también se puede exportar como una aplicación estática mediante el uso de dos bibliotecas increíbles:

  • Hacer clic – ayúdenos a manejar un comando personalizado en Flask CLI
  • Frasco congelado – Genere una versión estática de nuestra aplicación y elimine por completo el middleware de Flask.

El código relevante se guarda en ejecutar.py

import click
from   flask_frozen import Freezer

from app import app
from app import db

# define custom command 
@app.cli.command()
def build():
    freezer = Freezer(app)
    freezer.freeze()

if __name__ == "__main__":
    app.run() 

Capturas de pantalla de la aplicación


Flask Dashboard Argon - página de inicio de sesión

Flask Dashboard Argon - página de tablas

Flask Dashboard Argon - página de perfil de usuario

Cómo usarlo


Como se mencionó anteriormente, el proyecto se publica bajo la licencia MIT en Github para que cualquiera pueda utilizarlo. En caso de que desee compilar la aplicación sin salir de esta página, abra su terminal preferido y escriba:

$ # 1. Get the code
$ git clone https://github.com/app-generator/flask-boilerplate-dashboard-argon.git
$ cd flask-boilerplate-dashboard-argon
$
$ # install modules using a virtualenv
$ virtualenv --no-site-packages env
$ source env/bin/activate
$ 
$ # 2. Install requirements
$ # SQLIte version (no PostgreSQL)
$ pip install -r requirements-sqlite.txt
$ 
$ # OR with PostgreSQL connector
$ pip install -r requirements.txt
$
$ # 3. Set the FLASK_APP environment variable
$ (Unix/Mac) export FLASK_APP=appseed-app.py
$ (Windows) set FLASK_APP=appseed-app.py
$ (Powershell) $env:FLASK_APP = ".\appseed-app.py"
$
$ # 4. Run the application
$ flask run --host=0.0.0.0
$
$ # 5. Go to http://127.0.0.1:5000/, create an account and log in

¡Gracias!

Por cierto, mi (apodo) nombre es fumar y estoy escribiendo mucho sobre Dev.a

Similar Posts

Leave a Reply

Your email address will not be published.