Suggerimenti e trucchi
Editor e IDE
Scrivete i modelli in un editor o IDE che supporti Latte. Sarà molto più piacevole.
- PhpStorm: installare il plugin Latte in
Settings > Plugins > Marketplace
- VS Code: installare i modelli Nette Latte + Neon, Nette Latte o il nuovo plugin Nette for VS Code.
- NetBeans IDE ha un supporto integrato
- Sublime Text 3: in Package Control trovare e installare il pacchetto
Nette
e selezionare Latte inView > Syntax
- nei vecchi editor usare l'evidenziazione Smarty per i file .latte
Il plugin per PhpStorm è molto avanzato e può suggerire perfettamente il codice PHP. Per lavorare in modo ottimale, utilizzare modelli digitati.

Il supporto per Latte si trova anche nel web code highlighter Prism.js e nell'editor Ace.
Latte all'interno di JavaScript o CSS
Latte può essere usato molto comodamente all'interno di JavaScript o CSS. Ma come evitare che Latte consideri erroneamente il codice JavaScript o lo stile CSS come un tag Latte?
Opzione 1
Evitare le situazioni in cui una lettera segue immediatamente una {
, inserendo uno spazio, un'interruzione di riga
o una virgoletta tra di esse:
Opzione 2
Disattiva completamente l'elaborazione dei tag Latte all'interno di un elemento che utilizza la sintassi n:syntax:
Opzione 3
Cambia la sintassi del tag Latte con doppie parentesi graffe all'interno dell'elemento:
In JavaScript, non inserire le variabili tra virgolette.
Sostituzione della clausola use
Come sostituire le clausole use
usate in PHP, in modo da non dover scrivere uno spazio dei nomi quando si accede a
una classe? Esempio PHP:
Opzione 1
Invece della clausola use
memorizzare il nome della classe in una variabile e poi invece di Dog
usare
$Dog
:
Opzione 2
Se l'oggetto $dog
è un'istanza di Pets\Model\Dog
, è possibile utilizzare
{if $dog->status === $dog::StatusHungry}
.
Generazione di XML in Latte
Latte può generare qualsiasi formato di testo (HTML, XML, CSV, iCal, ecc.), tuttavia, per poter eseguire correttamente
l'escape dei dati visualizzati, è necessario indicare il formato che stiamo generando. A questo scopo si utilizza il tag {contentType}
serve a questo scopo.
Quindi, ad esempio, possiamo generare una sitemap in modo simile:
Passare i dati da un modello incluso
Le variabili create con {var}
o {default}
nel template incluso esistono solo in esso e non sono
disponibili nel template incluso. Se vogliamo passare alcuni dati dal template incluso a quello incluso, una delle opzioni è
passare un oggetto al template e impostare i dati su di esso.
Modello principale:
Modello incluso included.latte
: