Speciální layout pro každý modul aplikace

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

Zdravím,

mám naplikaci o následující struktuře:

├───AdminModule
│   ├───model
│   ├───presenters
│   └───templates
│       ├───Homepage
│       └───Sign
├───config
├───model
├───presenters
├───router
└───templates
    ├───Calendar
    ├───components
    ├───Error
    ├───Homepage
    └───Payment

Potřeboval bych, aby modul AdminModule používal svou šablonu, ideálně umístěnou v AdminModule/templates/@layout.latte. Nevíte, jak na to?

Když zadefinuju v AdminModule/presenters/BasePresenter v beforeRender

$this->setLayout('layout');

, tak to ten @layout.latte hledá v podsložkách jednotlivých pohledů (např. homepage, payment, …). Pokud udělám

$this->setLayout('../layout');

tak zase vykrpuje parsování.

Editoval kastanekdavid (21. 2. 2014 20:26)

Tomáš Kolinger
Člen | 136
+
0
-

Pokud vím tak to je výchozí chování. Hledá se nejbližší @layout. Tj. pokud budeš mít @layout v AdminModule, tak se automaticky použije. Není třeba nic volat a nastavovat.