Víceúrovňový layout změna bloku content

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

Zdravím,
hledal jsem nějaké informace k dědičnosti šablon, respektive layoutu. Našel jsem následující odkazy :

  1. https://latte.nette.org/cs/tags
  2. https://forum.nette.org/…uziti-modulu

Možná jsem to špatně pochopil, ale vypadá to že to neřeší můj problém. Ten je následující :
Pokud použiji strukturu Modulů jako v odkazu 2. Tak sice můžu vytvořit v modulu layout, ketý extendne ten oficiální. Ale nedaří se mi donutit ho, aby upravil vložení bloku content.

Příklad :

@layout.phtml (základní layout v app/templates )

<html>
<head>
.
.
<div>
{include #content}
</div>
</html>

@layout.phtml (layout v app/AminModule/templates )

{block #content}
<div>
.
{include #parent} //zde bych potřeboval vložit, co přijde od šablony presenteru
.
{/block}
{extends ../../templates/@layout.phtml}

Existuje nějaký způsob jak tohoto docílit, jde o to co je definováno v hlavním layoutu zůstalo a Modulové Layouty si přizpůsobili jen část content ......

Doufáím že to neni moc zmateně vysvětlený .....

Editoval Hauron (9. 12. 2010 9:15)

newPOPE
Člen | 648
+
0
-

Ja to riesim tak ze mam BaseModule co je len abstratny BasePresenter a „abstraktny“ layout a v moduloch len dedim od toho layoutu a az v nich include #content ale skor pouzivam dedenie sablony od konkretneho layoutu daneho modulu.

Kod uz nestiham dopisat… v pripade ze nebudes vediet tak ho sem hodim neskor

Jan Tvrdík
Nette guru | 2595
+
+1
-
{extends ../../templates/@layout.phtml}

{block #content}
	...
	{include #innerContent}
	...
{/block}

A v šablonách pak používat {block #innerContent}.