Nové formuláře
- _Martin_
- Generous Backer | 679
Rád bych otevřel diskuzi, jakým směrem vyvíjet formuláře. David už kdysi přemýšlel o tom, jak oddělit logiku a vzhled. Protože ještě zůstává u návrhu, přicházím taky s jednou myšlenkou.
Napadlo mě to nedávno. Dělal jsem velmi složitý formulář, kde pro mě omezující začlo být i vlastní vykreslování. Tehdy mi došlo, že logika formulářů je až příliš úzce spojená se vzhledem (X)HTML formulářů. Předvedeme si to na jednoduchém příkladu: v čem se liší SelectBox od RadioListu z pohledu logiky? Vybírám přeci jednu hodnotu z možných. Že prý multiple? Jak by se potom lišil od CheckBoxListu?
Čím víc nad tím přemýšlím, tím více mě napadá, že formulář z pohledu logiky by měl mít možnost přidávat prvky typu „jeden z mnoha“, „více z mnoha“, „libovolný“, apod. S ohledem na logiku MVC může být presentační vrstvou třeba xml protokol nějakého veřejného API, export do PDF a pokud to hodně nadsadím, tak i příkazová řádka vzdáleného terminálu. A to vše musí být schopen „formulář“ zpracovat.
Možná se vám to zdá divné, ale nepřibližuje se tím snad „formulář“ ke svému prvotnímu účelu a to k získávání dat? Takový formulář může mít mraky vykreslovacích logik, adaptérů, čehokoliv – a vždy nám do aplikace půjdou data hezky zvalidovaná.
Jen si tak říkám: budou to pak ještě vůbec formuláře?
- David Grudl
- Nette Core | 8218
Tohle už by asi překročilo praktickou míru abstrakce. Tedy uvažuješ správně, ale presentery a formuláře se v drtivé většině případů budou stejně používat právě v HTML stránce.
- Petr Motejlek
- Člen | 293
Já s tím celkem souhlasím, že co se architektury týče, tak by bylo hezčí jen říct: očekávám, že uživatel si vybere alespoň jednu z těchto možností, nějak to zařiď, aplikace ;) Něco na pozadí by si zjistilo, jakým protokolem hovoří uživatel (ať už je to XML, HTTP, aj.) a provedlo by to s ním debatu o tom, jakou možnost by si chtěl vybrat. Tohle ale až moc připomíná práci pro nějaký aplikační server, než framework :D.