NAppForm vs. NForm, rozdiely a dôvody existencie
- RichardT
- Člen | 43
Zdravím,
chcem sa opýtať – dostalo sa mi nezávideniahodnej úlohy a musel som prerobiť nette aplikáciu napísanú pre PHP 5.3 do PHP 5.2. Zdá sa že všetko funguje ako má, ale mám otázku ohľadom formulárov. vo verzii pre PHP 5.3 som používal Nette\Application\UI\Form avšak keď som vo verzii PHP 5.2 skúsil NForm, nefungovali – mali totiž prázdny action. Použitie NAppForm však problém vyriešilo.
Chcem sa opýtať, aké sú medzi nimi rozdiely a prečo existujú NForm a NAppForm, prečo je NAppForm ekvivavlentné Nette\Application\UI\Form. Vôbec to nechápem, v manuáli už žiadny AppForm ani nieje. Tipujem že to má nejaké historické dôvody.
Ďakujem :)
Použitá verzia Nette: 2.0.3
- Vojtěch Dobeš
- Gold Partner | 1316
Dříve se Nette\Application\UI\Form
jmenoval
Nette\Application\AppForm
, pokud mi paměť dobře slouží.
- redhead
- Člen | 1313
V nových verzích je to akorát jinak (lépe) pojmenované. Formuláře jsou stále skutečně dva:
https://api.nette.org/…UI/Form.html
https://api.nette.org/…ms/Form.html
Rozdíl je v tom, že ten první je určen výhradně pro použití v presenterech.
- Vojtěch Dobeš
- Gold Partner | 1316
Budu uvádět aktuální namespace verzi pro 5.3:
Nette\Forms\Form
je základní funkcionalita formuláře.
Nette\Application\UI\Form
je pak vhodně provázaný s Nette
presentery atd. Tedy pokud je aplikace psána kompletně v Nette, je vždycky
lepší použít UI\Form
. Pokud bych chtěl použít jen Nette
formuláře a zbytek ne, tou správnou volbou je
Nette\Forms\Form
.