I Template sono file di testo che contengono il markup HTML, che costituisce il layout della pagina, e porzioni di codice Python, utili alla visualizzazione dei contenuti dinamici.
Come abbiamo già detto essi rappresentano lo strato "View" del pattern MVC e ci consentono di centralizzare la definizione dell'aspetto delle View dell'applicazione Django.
I contenuti dinamici possono essere definiti tramite:
- variabili - elementi elaborati nella View che vengono passati allo strato di presentazione
- tag - permettono l'inserimento di codice Python e la gestione del rendering di oggetti dinamici
In questa lezione esaminiamo le variabili: esse vengono indicate mediante un nome tra doppie parantesi graffe ({{ variabile }}
) e vengono sostituite da Django con il valore che la View elabora a runtime.
Possiamo definire dei filtri sulle variabili: i filtri sono dei "modificatori" del valore della variabile a cui vengono applicati. Se ad esempio volessimo visualizzare sempre in minuscolo
il valore di una variabile potremmo utilizzare il filtro lower
nel modo seguente:
{{ variabile | lower }}
Per applicare un filtro ad una variabile si utilizza il simbolo pipe (|
).
Alcuni filtri posso accettare argomenti, tali argomenti vengono passati al filtro mediante i due punti (:
). Vediamo, ad esempio, come mostrare solo le prime 30 parole della variabile:
{{ variabile | truncatewords:30 }}
I principali filtri predefiniti sono:
Filtro | Descrizione |
---|---|
default | definisce un valore di default da mostrare nel caso in cui la variabile non esista o sia vuota |
length | restituisce la dimensione dimensione di stringhe e liste |
striptags | elimina tutti i tag contenenti nella stringa |
join | restituisce una stringa unendo gli elementi di una lista |