Přístup z komponent do bloku v layout.latte

Drobek94
Člen | 3
+
0
-

Dobrý den,

potřeboval bych poradit s následujícím problémem. Potřeboval bych dostat z různých komponent dostat tlačítka do headru stránky.

Mám hlavní šablonu layout.latte

...
<div class="page-head-buttons">
	{block pageHeaderButtons}
	{/block}
</div>

...

<div class="main-content">
    {include content}
</div>
...

do content se vypíše obsah šablon které dědí od layout.latte a obsahují nejaké komponenty, v šabloně se vypisují různé komponenty mimo jiné.

...
{control customControl}
...

v customControl.latte bych pak potreboval předefinovat block pageHeaderButtons z layout.latte nejak takto

{block pageHeaderButtons}
	tlacitko1
	tlacitko2
{/block}

obsah kontrolky

jiná šablona může přidat jinou kontrolku, která obsahuje jiné tlačítka a v tu chvíli se zobrazí ty.

Děkuju moc
Martin.

Robin Martinez
Člen | 89
+
0
-

pokud to chapu spravne, tak se tohle spis ma resit v controlleru, ktery do dane sablony vlozi spravny formular?

Editoval Robin Martinez (28. 7. 2022 13:29)

m.brecher
Generous Backer | 717
+
0
-

Ahoj,

sice jsem tohle nikdy nedělal, ale koukl jsem do dokumentace a komponenty umožňují oddělené vykreslení různých částí komponenty do různých míst v layoutu:

https://doc.nette.org/…n/components#…

Podle dokumentace by se tak mělo jít cestou napsat si v komponentě metody pro vykreslení těch částí komponenty a použít druhou vykreslovací metodu v {control komponenta:cast}, jestli by šlo ve značce {control komponenta} nějak specifikovat blok ze šablony komponenty jsem v dokumentaci nenašel, ale to neznamená, že to nejde.