Jak poslat z presenteru rovnou výstup bez templaty?
- keff
- Člen | 12
Ahojte, chci do vyvíjeného webu přidat API, pro propojení se starším informačním systémem. Fungovalo by tak, že IS pošle HTTP postem soubor, já ho na serveru zpracuju, a vrátím odpověď, typicky 0 nebo 1.
Teď to řeším tak, že actionFoo() metoda presenteru nastaví proměnnou FooPresenter->output na výstupní hodnotu, $this->view = ‚echo‘, a pak je pro každou actionFoo() i příslušné renderFoo(), které akorát zkopíruje $this->output do $this->template->output. K tomu pak je ještě prázdná template echo.phtml (jen {!$output}).
Uvedené řešení mi přijde neskutečně zdlouhavé na vypsání 0/1, a
když mám v API těch akcí víc, musím ke každé psát render*()
metody.
V Nette se dělají věci chytře a bez opakování, takže se chci zeptat
jestli můžu dát v FooPresenter:actionFoo() jen echo 1; a pak nějak říct
Nette, že tím má skončit – ať nezpracovává templaty a render
metody…
Díky :) (PS: tohle psaní příspěvku je tu děsně vychytané, dobrá práce Davide!)