Invalidace a načtení nových dat

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

Ahoj,

mám tabulku, do které sázím data z actionDefault.

Pak nějaký handle, který např. odstraní jeden záznam z té tabulky (klasický delete v databázi).

Poté invaliduju snippet, ve kterým je tato tabulka.

Proč se děje, že někdy akorát smažu a invaliduju a tabulka se překreslí správně a už tam není smazaný záznam. Někdy je ale potřeba smazat z databáze, do templaty znovu nahrát data a poté invalidovat.

Nevíte, proč se tak děje?

h4kuna
Backer | 740
+
0
-

Třeba ti pomůže životní cyklus nette action se děje dřív než handle

wise
Člen | 161
+
0
-

V presenteru je 2× createComponent, actionDefault, actionEdit, handleDelete, beforeRender.

v actionDefault se předají data do templay
ty se vykreslí v tabulce, kde je odkaz jako ajax handle. V něm smažu záznam a invaliduju snippet.

A data se nepřekreslí, je potřeba je ještě před invalidací předat do template znova v handlu.

Někde to ale není potřeba.

h4kuna
Backer | 740
+
0
-

Bez ajaxu to funguje?

wise
Člen | 161
+
0
-

Ono to funguje i s ajaxem, nefunguje pouze invalidace snippetu, pokud před voláním invalidateControl nenatáhnu data znovu do template.