Dicas e truques
Editores e IDE
Escreva os modelos em um editor ou IDE que tenha suporte para Latte. Será muito mais agradável.
- PhpStorm: instale o plugin Latte
Settings > Plugins > Marketplace
- VS Code: instale o Nette Latte + Neon, os modelos Nette Latte ou o mais novo plug-in Nette para VS Code
- O NetBeans IDE tem suporte incorporado
- Texto Sublime 3: em Package Control find and install
Nette
e selecione Latte inView > Syntax
- em editores antigos usam Smarty highlighting para arquivos .latte
O plugin para PhpStorm é muito avançado e pode perfeitamente sugerir código PHP. Para funcionar de forma ideal, use modelos datilografados.

O suporte para o Latte também pode ser encontrado no código de barras Prism.js e no editor Ace.
Latte Inside JavaScript ou CSS
O Latte pode ser usado com muito conforto dentro do JavaScript ou CSS. Mas como evitar que o Latte seja equivocadamente considerado código JavaScript ou estilo CSS como uma tag Latte?
**Opção 1***
Evite situações em que uma carta siga imediatamente um {
, seja inserindo um espaço, quebra de linha ou aspas
entre eles:
**Opção 2***
Desligue completamente o processamento de tags Latte dentro de um elemento usando a sintaxe n:syntax:
**Opção 3***
Mude a sintaxe da etiqueta Latte para o elemento de dupla cinta dentro do elemento:
Em JavaScript, não coloque variável entre aspas.
Substituição para use
Cláusula
Como substituir as cláusulas use
utilizadas no PHP para que você não tenha que escrever um namespace ao acessar
uma classe? Exemplo em PHP:
**Opção 1***
Em vez da cláusula use
armazenar o nome da classe em uma variável e depois em vez de Dog
usar
$Dog
:
**Opção 2***
Se o objeto $dog
é uma instância de Pets\Model\Dog
, então
{if $dog->status === $dog::StatusHungry}
pode ser usado.
Geração de XML em Latte
O Latte pode gerar qualquer formato de texto (HTML, XML, CSV, iCal, etc.), no entanto, para escapar adequadamente dos dados
exibidos, devemos dizer-lhe qual formato estamos gerando. O {contentType}
é
usada para isso.
Então, por exemplo, podemos gerar um mapa do site de maneira semelhante:
Passagem de dados de um modelo incluído
As variáveis que criamos com {var}
ou {default}
no modelo incluído só existem nele e não estão
disponíveis no modelo incluído. Se quisermos passar alguns dados do modelo incluído de volta ao modelo incluído, uma das
opções é passar um objeto para o modelo e definir os dados para ele.
Modelo principal:
Modelo incluído included.latte
: