[Template] – Automatické renderování šablon

- kesav
 - Člen | 5
 
Zdravím,
chtěl bych se zeptat, jestli jde nějak v nastavení vypnout automatické volání $template->render() v presenteru. Potřebuji udělat render manuálně v závislosti na předchozí akci, která mi vrátí dynamicky jinou šablonu a jiná data. Vím, že to jde udělat přes $this->template->setFile(), ale zase kvůli debugu a dalším věcem kvůli kterým mi defaultní auto render vadí.
Předem díky za odpověď a prosím o schovívavost. s nette začínám, zatím jsem dělal pořád v zendu a tam to šlo jednoduše. :-)

- Panda
 - Člen | 569
 
public function renderSomething()
{
	//...
	$this->terminate(new RenderResponse($myTemplate));
}
Pozor, po volání terminate() dojde k vyhození výjimky a
kód za ním se nevykoná! Pokud to uvedeš na konci metody render, tak
přijdeš o volání afterRender() a ukládání globálního
stavu komponent. Pokud by to bylo nežádoucí, tak můžeš překrýt metodu
sendTemplate() a potřebnou logiku implementovat tam.
Editoval Panda (21. 8. 2010 10:22)