Latte – výpis bloku do include

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
Duch.Veliky
Člen | 68
+
0
-

Ahoj, mám dotaz.

když udělám v šabloně include na latte soubor:
{include '_column_left.latte'}

a potom v tom načteném souboru chci vypsat blok:
{include menu_title}

tak to nefunguje. Dřív se na to tuším používalo „includeblock“, ale teď je deprecated a doporučuje se použít import… když ale použiju import tak to nic nedělá.

Samozřejmě když potom zkopíruju obsah souboru _column_left.latte na místo kde ho includuju tak to funguje.

Prostě se nepřenáší bloky do toho includovaného souboru.

Děkuji a přeji hezký den.

David Grudl
Nette Core | 8218
+
0
-

Pro tento use case bohužel v tuto chvíli neexistuje náhrada. Rád to doplním, jen je potřeba vymyslet vhodné pojmenování, název makra includeblock byl velmi zavádějící.

Pomocí {import} se to dá obejít. Obsah souboru _column_left.latte se uzavře do {define column_left} (nebo {block}, to je fuk), v hlavičce šablony se zavolá {import '_column_left.latte'} a v místě použití pak {include column_left}.

Duch.Veliky
Člen | 68
+
0
-

Děkuji za informace i řešení problému, jak se to dá obejít.

Ivorius
Nette Blogger | 119
+
0
-

A co jednoduše {includeWithBlock} ? Já jsem si to sice už vše přepsal do bloků a import, ale použití původního mi přijde lepší.