Použití layoutu z jiné adresářové struktury

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

Mám následující adresářovou strukturu

<?php
//adresářová struktura

/-- modules
        - calendar
                -models
                -presenters
                        -CalendarPresenter.php
                -templates
                        -calendar

\--
/-- presenters
\--
/-- templates
        -@layout.latte

//Potřebuji abych nějak nastavil v CalendarPresenter že má použít layout z top úrovně ve složce templates.

$this->setLayout("layout"); //Hledá soubor v /--modules -calendar - templates ...

?>

Jak to v tom CalendarPresenteru upravit?

saimons
Člen | 293
+
0
-

V tom layoutu calendar.latte ve slozce calendar muzes pouzit: {layout '../../../templates/@layout.latte'} a nadefinovat si tam bloky ktere potrebujes.

Editoval saimons (13. 11. 2012 15:58)

David Matějka
Moderator | 6445
+
0
-

v pripade, ze to neni jednorazova zalezitost pro jeden presenter, tak je lepsi si nekde v base presenteru prepsat metodu formatLayoutTemplateFiles – ta se stara o zajisteni seznamu vsech moznych nazvu layoutu, viz:
https://api.nette.org/…ter.php.html#505