Introduzione a Flask

Flask è un popolare framework Python per lo sviluppo di applicazioni web. Viene fornito con funzionalità e requisiti minimi incorporati, rendendo semplice l'avvio e flessibile l'utilizzo.

Grazie a Flask hai la libertà di personalizzare la maggior parte degli aspetti dell'applicazione, tra cui l'integrazione del database, gli account e l'autenticazione.

Oggetto App Flask

Il modulo Python Flask contiene tutte le classi e le funzioni necessarie per la costruzione di una web app.

La classe Flask può essere importata per creare l'oggetto principale dell'applicazione e prende il nome dell'applicazione come argomento.

# Importazione della classe Flask
from flask import Flask

# Creazione dell'oggetto Flask
app = Flask(__name__)

Se hai dimestichezza con con una CLI (Command Line Interface) come la Bash, ad esempio, un'app creata con Flask può essere eseguita creando la variabile d'ambiente FLASK_APP ed eseguendo Flask nel terminale. $export FLASK_APP=app.py $flask run . Se invece non sai nulla di CLI ti consiglio il video sul canale YouTube di tuttofaredigitale "Interfaccia a riga di comando".

Il percorso

Il percorso, route per definizione, con Flask può essere creato definendo una funzione di visualizzazione e associandovi un URL utilizzando il decorator route().

I percorsi specificano come l'applicazione Flask gestisce le richieste che riceve, come ad esempio cosa visualizzare sulla pagina web ad un specificato URL.

@app.route("/")
def hello_world():
  return "Benvenuto viaggiatore!"
#Output: il testo è visualizzato al percorso URL "/"

In una web app crata con Python e Flask, l'HTML può essere restituito da una funzione per essere visualizzato su una pagina web. L'HTML può essere restituito come stringa.

@app.route('/')
def benvenuto():
   return "Benvenuto!"
# Il testo "benvenuto" è visualizzato come h1 nell'URL con percorso "/"

Flask può adattarsi agli URL dinamici. Le sezioni variabili di un URL possono essere indicate da parentesi angolari e da un convertitore opzionale: <convertitore: nome_variabile>. Queste parti variabili saranno poi passate alla funzione di visualizzazione come argomenti.

# Risposta a "/pagina/1", "/pagina/2", etc
@app.route("/pagina/")
def content(pag_num):
   return f"Pagina numero {pag_num}"

Esempio:

from flask import Flask
app = Flask(__name__)

@app.route("/")
@app.route("/home")
def home():
   return "<h1>Benvenuto!</h1>"

@app.route ("/agente/ <int:agente_id>")
def agente(agente_id):
   return f"""
   <h2>Agente {agente_id} Profilo</h2>
   <a href="/">Ritorna alla pagina principale</a>
   """

@app.route ("/rapporto/ <rapporto_titolo>")
def rapporto(rapporto_titolo):
   return f"""
   <h2>{rapporto_titolo.replace ("-", " ").title()}</h2>
    <a href="/">Ritorna alla pagina principale</a>
   """

<<<

Nessun argomento precedente

>>>

Nessun argomento seguente
Back-end e front-end
Vai alla pagina
Introduzione a Flask
Vai alla pagina
Template con Jinja2
Vai alla pagina
Controllo del Flusso
Vai alla pagina
Ereditarietà
Vai alla pagina
Form di contatto
Vai alla pagina
Flask SQLAlchemy
Vai alla pagina