Vnořování latte šablon s parametrem
- flendry
- Člen | 5
Zdravím,
mám pole, které obsahuje různé třídy. Já potřebuji každou třídy vykrelist pomocí jiného HTML. Pomocí latte procházím forEachem toto pole a mám definovaný pro každou třídu if, ve kterém se pak nachází samotné HTML, podle kteerého se má ta která třída vykreslit.
Vzhledem k tomu, že těch tříd, které se v poli mohou objevit je asi deset, tak výsledkem je html kód dlouhej jak tejden.
Proto přemýšlím, jak dosebe zanořit latte šablony a rozbít kód do různých souborů. Chtěl bych mít pro každou třídu svůj vlastní .latte soubor a nějak ho includovat s parametrem.
Mám samozřejmě definovaný @layout.latte ve kterém se vykresluje stránka která pak zobrazuje tyto třídy.
Představoval jsem si něco jako:
{layout "../@layout-different.latte"}
{block content}
<h1>All blocks</h1>
{foreach $blocks as $block}
{if $block->toString() == 'type_1'}
<h2>First type</h2>
{include type_1 $block}
{elseif $block->toString() == 'type_2'}
<h2>Second type</h2>
{include type_2 $block}
{elseif $block->toString() == 'type_3'}
<h2>Third type</h2>
...
{/if}
{/foreach}
{/block}
a pak analogicky, kdybych chtěl ještě do html, které obsluhuje block type1 vložit nějaký další kód, který se mění v závislosti na proměnných obsažených v $block.
Ten popis vnořování latte šablon mi z dokumentace vůbec není jasný.
Dík!
- Duch.Veliky
- Člen | 68
Když tam dáš include, tak se tam automaticky vnese i ta proměnná, ne? :)
takže stačí udělat např:
{include 'type_1.latte'}
Editoval Duch.Veliky (17. 3. 2018 17:31)