Skupina presenterov so spoločnými templates

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

Mám presentery Clanok, Faq a Blog. Všetky dedia väčšinu funkcionality od presentera Text (je to abstract class). Na domácom serveri používajú všetky presentery rovnaké šablóny uložené v adresári templates/Text/, pre ostatné presentery som urobil symlinky. Bohužiaľ na produkčnom serveri nemám právo robiť symlinky, preto musím držať 4 adresáre so šablónami s rovnakým obsahom.
Viem, že môžem zmeniť súbor so šablónou v renderAction(), môžem ale priamo zmeniť adresár templates pre celý presenter?

norbe
Backer | 405
+
0
-

Můžeš si upravit/přepsat metodu formatTemplateFiles v TextPresenteru tak, aby to poděděné presentery hledali v jeho složce (v podstatě můžeš nechat stejný kód, jen nahradíš $this->getReflection()->getFileName() za __FILE__).

Jamicon
Člen | 19
+
0
-

norbe napsal(a):

Můžeš si upravit/přepsat metodu formatTemplateFiles v TextPresenteru tak, aby to poděděné presentery hledali v jeho složce (v podstatě můžeš nechat stejný kód, jen nahradíš $this->getReflection()->getFileName() za __FILE__).

Ďakujem, o hodinu som doma, potom sa skúsim na to pozrieť.

nanuqcz
Člen | 822
+
0
-

Anebo můžeš do šablon poděděných presenterů (např. Templates\Clanok\default.latte) dát

{extends '../Text/default.latte'}

čímž se podědí šablona presenteru TextPresenter.