jak rendrovat formular na kazde strance?

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

Potrebuju zobrazovat formular na kazde strance respektive potrebuju vytvorit form pro @layout.html, zkousel jsem metody v BasePresenteru – startup(), beforeRender() ale na nekterych presenterech mi to pise error s tim ze nemuze najit prvek formulare. Nevi nekdo jak na to ?

jasir
Člen | 746
+
0
-

Vytvořit createComponentMyForm (továrničku) i handlery v BasePresenteru a v layoutu pak {control myForm}

pjoter
Člen | 118
+
0
-

a co kdyz pouzivam manual rendering ? takhle mi to vykresli do tabulek a ja to potrebuju jen ciste ty prvky

jasir
Člen | 746
+
0
-

Potřebuješ se tedy dostat k myForm v layoutu. Jsou dvě možnosti.

  • Buď si šáhneš v layoutu na myForm přes presenter pomocí $presenter['myForm'] nebo $control['myForm'] (proměnné $presenter i $control jsou automaticky registrované a v layoutu $presenter === $control),
  • nebo si zaregistruj proměnnou myForm v template v beforeRender v BasePresenteru (a nesmíš pak v metodách beforeRender poděděných presenterů zapomenout volat parent::beforeRender)

Editoval jasir (21. 10. 2009 10:36)