shutdown a renderování šablony

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

PHP/5.2.11
Nette Framework 1.0-dev (revision 3be78a5 released on 2010–03–14)

Ať dělám co dělám, metodat shutdown prezenteru se mi volá dříve, než je dokončeno renderování šablony, ikdyž podle životního cyklu prezenteru by se měla zavolat až po vyrenderování.
Pro příklad tento kód:

<?php
class HomepagePresenter extends Presenter
{
	public function renderDefault()
	{
		$this->template->x = "renderDefault";
	}

	protected function shutdown($response) {
		$this->template->x = "shutdown";
		parent::shutdown($response);
	}
}
?>

V šabloně pouze vypíšu {=$x}.
Jako výstup dostanu shutdown;

Mé očekávání bylo výpis renderDefault, nebo vyhození výjimky že zapisuju do již vyrenderované šablony …

Je tedy chyba v mém testování, v dokumentaci, nebo ve frameworku?

LM
Člen | 206
+
0
-

Tohle se změnilo, teď šablonu renderuje RenderResponse v Application, takže až za shutdown. Víc info: https://forum.nette.org/…i-presenteru.

pekelnik
Člen | 462
+
0
-

V tom případě by se konečně mohli render metody přejmenovat na view ;)