NAppForm vs. NForm, rozdiely a dôvody existencie

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

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
+
0
-

Dříve se Nette\Application\UI\Form jmenoval Nette\Application\AppForm, pokud mi paměť dobře slouží.

RichardT
Člen | 43
+
0
-

Ciže to znamená, že vo verzii pre 5.3 už ekvivalent NForm neexistuje?

A zaujímal by ma ten pôvodný zámer, prečo vlastne vznikly 2 odlišné triedy ktoré robia vlastne to isté.

Editoval RichardT (11. 9. 2012 22:42)

redhead
Člen | 1313
+
0
-

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
+
0
-

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.

RichardT
Člen | 43
+
0
-

Skvelé, ďakujem, takto mi to úplne stačí :) Mal som z tých pomenovaní len trochu guláš.