Přístup k položkám formuláře před jeho odesláním
- microcz
- Člen | 62
Chtěl bych si vytvořit form wizard, který bude využívat nette formuláře. Má představa je taková, že vytvořím vlastní komponentu, do které nasetuji nette formulář, jehož prvky rozdělím do několika kroků. Při přechodu z kroku x na následující krok y vyvolám handleNextStep, ve které bych chtěl „zvalidovat“ jen prvky z kroku x.
K tomu ale budu potřebovat:
- Mít přístup k hodnotám vybraných položek formuláře před jeho odesláním ze třídy komponenty
- Mít možnost vyvolat validaci uvedených položek
Vůbec ale netuším jak se dají obě věci udělat a zda to vůbec lze, poradíte?
Případně bych se ještě zeptal jakým způsobem řešíte wizardy v nette vy?
Editoval microcz (22. 5. 2014 13:32)
- duke
- Člen | 650
Řešit to lze např. třídou, která bude používat session pro uložení stavu všech dílčích formulářů a mnohostí těchto formulářů v komponentě (klidně i presenteru), která (resp. který) to bude koordinovat (inicializovat, validovat a prostřednictvím nějaké fasády ukládat). Ona třída pracující nad session přitom může umět vracet jak data jednotlivých kroků (pro inicializace formulářů), tak všechna data naráz (pro uložení).