Proměnné default values při editaci
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- Mahal
- Člen | 20
Dobrý den,
pro editaci projektu využívám formulář, kterému přiřadím výchozí
hodnoty z protected $project
.
Př.:
$form->addSelect('state','Stav:', \ProjectComponent::STATES)
->setDefaultValue($this->project->state);
Při renderování se výchozí hodnoty vykreslí v pořádku, ale při
odeslání formuláře laděnka hlásí chybu
... property of non-object
pro všechny
->setDefaultValue($this->project...)
. V této situaci se
formulář vykreslí dříve než renderEdit($id)
? Z jakého
důvodu? Jak tuto problematiku obejít tak, aby výchozí hodnoty patřily
k vybranému projektu, ale formulář šel odeslat?
Děkuji
- David Matějka
- Moderator | 6445
V této situaci se formulář vykreslí dříve …
nevykreslí, ale musí se sestavit, aby došlo k jeho zpracování. A zpracování probíhá v rámci životního cyklu na úrovni handle metod. Řešením je tedy přesunout načítání projektu z render* metody do action* metody.