Serializácia \Nette\Application\UI\Form

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

Dobrý deň,

neskúšal niekto v Nette 2.0 beta serializovať objekt formulára z \Nette\Application\UI\Form?
Pri pokuse o serializáciu formulára bez pridania skupiny, dostanem výnimku: Serialization of 'Closure' is not allowed. Pokúsil som sa nájsť, ktorá lambda funkcia by mohla byť zodpovedná, ale nepodarilo sa mi to.

Chcel by som uložiť do cache objekty formulárov, aby sa nemuseli celé vytvárať pri väčších formulároch a údaje, ktoré by tam bolo treba doplniť by boli doplnené po vytiahnutí objektu z cache.

Má niekto nejaké nápady, ako na to, keďže takto to, zdá sa, nepôjde bez zmien v Nette?

Ďakujem.

Filip Procházka
Moderator | 4668
+
0
-

Jednoduše, neserializuj komponenty. Nejde to. A nastuduj si toto.

slapo
Člen | 22
+
0
-

HosipLan napsal(a):

Jednoduše, neserializuj komponenty. Nejde to.

Ďakujem.

HosipLan napsal(a):

A nastuduj si toto.

O predčasnú optimalizáciu nejde. Výkonnostný problém sa vyskytol a podľa údajov z profilera to vyzerá, že by ukladanie objektov formulárov do cache aspoň trocha pomohlo. Do akej miery som si nie celkom istý, preto som to chcel vyskúšať.

Filip Procházka
Moderator | 4668
+
0
-

Optimalizuj tedy rutinu sestavování.

A abych byl korektní, serializovat sestavený formulář by mělo jít. Ale nepůjde serializovat validační pravidla.

Editoval HosipLan (9. 8. 2011 16:11)

slapo
Člen | 22
+
0
-

OK, vďaka.