metódy render()
- kravčo
- Člen | 721
Od metódy IFormRenderer::render()
sa očakáva, že vráti
reťazec vykresleného formulára, na rozdiel od
Template::render()
, ktorá vypisuje výsledok na výstup. Tiež
Form::render()
vypisuje a Html::render()
vracia.
Z môjho hlbšieho hrania sa s Template sa mi zafixovalo nasledovné:
*::render()
→ vykresľuje
*::__toString()
→ vracia string
a tento „fix“ som aplikoval i na vlastné triedy… no ako zisťujem táto funkcionalita je v rámci Nette nejednotná, je to tak zámerne? Alebo mi opäť uniká pointa?
ps>> vďaka za __toString(TRUE)
;)
Editoval kravco (7. 1. 2009 3:01)
- David Grudl
- Nette Core | 8218
kravco napsal(a):
*::render()
→ vykresľuje
*::__toString()
→ vracia string
Takhle mi to taky připadá logické.
Od metódy IFormRenderer::render() sa očakáva, že vráti reťazec vykresleného formulára
Jelikož jde o „interní“ záležitost, není změna chování nijak problematická. Nicméně uvnitř třídy ConventionalRenderer je řada metod renderNeco(), kde by změna vhodná nebyla.
Html::render() vracia.
Ale tady by to mohl být problém… Mám chování změnit? Používá někdo metodu render()?
- romansklenar
- Člen | 655
*::render()
→ vykresľuje
*::__toString()
→ vracia string
Zní to logicky, jsem pro.
- kravčo
- Člen | 721
David Grudl napsal(a):
kravco napsal(a):
Od metódy IFormRenderer::render() sa očakáva, že vráti reťazec vykresleného formulára
Jelikož jde o „interní“ záležitost, není změna chování nijak problematická. Nicméně uvnitř třídy ConventionalRenderer je řada metod renderNeco(), kde by změna vhodná nebyla.
Mne išlo hlavne o IFormRenderer::render()
. To ako pomenúva
svoje metódy ConventionalRenderer
je iná vec, každopádne
názvoslovie v rámci API by malo byť konzistentné…
aj keď je to interné, pre ľudí s vlastnými renderermi to BC break bude…
Editoval kravco (9. 1. 2009 23:44)
- David Grudl
- Nette Core | 8218
Zatím do toho nebudu šahat. Ve formulářích je potřeba pořešit víc věcí, takže pak bych do vzal všechno najednou.
- David Grudl
- Nette Core | 8218
Docela rád bych znovuotevřel tohle téma. Co myslíte, sjednotit chování metod render() ?