vytvoření kaskáda šablon @layout

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

Potřeboval bych vytvořit kaskádu šablon @layout.

templates/@layout.phtml - zakladni rozvrzeni stranky, obecne hlavicky, vymezeni prostoru #content
modul/templates/@layout.phtml - pouze naformatovat prostor #content
modul/templates/View/action.phtml - naplneni prostoru #content

Napada vas jak toho dosahnout?

Editoval mlha (15. 4. 2010 9:53)

despiq
Člen | 320
+
0
-

asi extends

Honza Kuchař
Člen | 1662
+
0
-

Na začátek šablony uveď

@{extends ../@layout.phtml}
@{block ...}
....
mlha
Člen | 58
+
0
-

Děkuji za odpověd.
Konečné řešení je tedy nasledující:

struktura šablon

templates/@layout.phtml - zakladni rozvrzeni stranky, vymezeni prostoru #moduleContent
modul/templates/@layout.phtml - formatuje moduleContent a vymezuje prostor #content
modul/templates/View/action.phtml - naplneni prostoru #content

obsah modul/templates/@layout.phtml

{extends ../../templates/@layout.phtml}

{block #moduleContent}
<div style="border: 1px solid #000;">
	{include #content}
</div>
mlha
Člen | 58
+
0
-

honzakuchar napsal(a):

Na začátek šablony uveď

@{extends ../@layout.phtml}
@{block ...}
....

Proč tam jsou ty zavináče? Funguje to i bez nich. Diky za info

Honza Kuchař
Člen | 1662
+
0
-

To je kvůli AJAXu, ale tím se zatím nezabývej.

Editoval honzakuchar (15. 4. 2010 11:51)

pekelnik
Člen | 462
+
0
-

Použij v prostředním #layoutu normálně {block content} dej do nej to co chceš mít v contentu „okolo“ a v šabloně view potom {block content} {include #parent}.

Takhle to používám já.

mlha
Člen | 58
+
0
-

do šablon view právě nechci zasahovat