render_template e la cartella templates
Restituisca un file HTML invece di una stringa.
render_template e la cartella templates è una lezione Flask Academy gratuita su CoddyKit. Questa è la lezione 1 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Flask Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Flask Academy include 4 lezioni in totale.
Dalle stringhe alle pagine
Finora le route restituivano semplici stringhe. Le pagine reali richiedono HTML e Flask offre render_template per fornire in modo ordinato file HTML completi.
Che cosa fa render_template
render_template trova un file HTML, lo elabora tramite il motore dei template e restituisce la pagina completata come corpo della risposta.
from flask import render_template
@app.route('/')
def home():
return render_template('index.html')La cartella templates
Flask cerca l'HTML in una cartella chiamata templates, accanto al file dell'applicazione. Inserisca lì index.html e Flask lo troverà automaticamente. 📁
myapp/
app.py
templates/
index.htmlPerché un nome fisso
Il nome templates è una convenzione, non un tentativo. Flask sa dove cercare, quindi non deve mai scrivere il percorso della cartella dentro render_template.
Indicare solo il nome del file
Passi solo il nome del file, non il percorso completo. Flask lo aggiunge alla cartella templates, mantenendo il codice breve e portabile.
return render_template('about.html')Sottocartelle dentro templates
Può raggruppare le pagine in sottocartelle e farvi riferimento con barre oblique. In questo modo un progetto grande rimane ordinato mentre cresce.
return render_template('users/profile.html')Un template minimale
In sostanza, un template è semplice HTML. Il più elementare è una normale pagina senza ancora alcuna sintassi speciale.
<!doctype html>
<title>Home</title>
<h1>Welcome</h1>I template vengono sottoposti a rendering
Anche un file semplice viene sottoposto a rendering: Flask lo elabora prima tramite Jinja2. È questo passaggio che permette di aggiungere in seguito elementi dinamici.
Restituire il risultato
render_template restituisce una stringa HTML, che Lei restituisce dalla view. Flask la racchiude in una risposta corretta con il tipo di contenuto appropriato.
@app.route('/')
def home():
return render_template('index.html')Errori TemplateNotFound
Se Flask non trova il file, viene restituito un errore TemplateNotFound. Controlli l'ortografia e che il file si trovi effettivamente dentro templates.
Separare logica e markup
I template tengono l'HTML fuori da Python. Le view gestiscono la logica, i template la presentazione e questa separazione rende entrambi molto più facili da leggere.
Verifica rapida
Dove si aspetta Flask di trovare per impostazione predefinita i file HTML?
Riepilogo
Ha imparato che render_template fornisce l'HTML dalla cartella templates usando il nome del file, così la logica rimane in Python e il markup nei file. Ottimo lavoro! 🎉
Domande Frequenti
La lezione «render_template e la cartella templates» è gratuita?
Sì — il testo completo di «render_template e la cartella templates» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Flask Academy, passa a CoddyKit PRO. Il corso Flask Academy include 4 lezioni in totale.
Cosa imparerò in «render_template e la cartella templates»?
Restituisca un file HTML invece di una stringa. Eserciti Flask Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.
Ho bisogno di esperienza per iniziare Flask Academy?
Non è richiesta alcuna esperienza precedente. Flask Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 1 di 4.
Quanto tempo richiede la lezione «render_template e la cartella templates»?
La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.
Posso scrivere ed eseguire codice in questa lezione Flask Academy?
Sì. Ogni lezione Flask Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.
Tutte le lezioni di questo corso
- render_template e la cartella templates
- Passare dati a un template
- Cicli e condizioni in Jinja2
- Autoescaping e filtro safe