TodoList + AJAX = jaké je pořadí při volání metod?

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

Zdravím,
na adrese https://doc.nette.org/cs/quickstart jsem si vytvořil aplikaci podle tutoriálu.

Když jsem si nevěděl rady jak do aplikace nasadit ajax, pomohl jsem si tímhle tutoriálem: https://pla.nette.org/…ivajici-ajax

Nyní jsem se dostal ale k problému:

Při volání metody handleChangeState() přes ajax, manipuluju s databází. Poté invaliduji určitý snippet, ve kterém se nachází vygenerovaný list metodou actionShow(). Výsledek je takový, že se sice změní hodnota v databázi, ale refreshnutý snippet je bezezměny. Po opětovném volání ajaxu na metodu handleChangeState(), (ovšem tentokrát na jiný záznam z db) a invalidování určitého snippetu se tzv. zobrazí stav, který se měl zobrazit o jeden krok zpátky.

Z toho jsem vydedukoval, že se metoda actionShow() volá dříve než sama handleChangeState(), lze toto nějak změnit? Popřípadě jak z toho ven?

Napadlo mě v metodě handleChangeState() zavolat $this->actionShow(), ale to nebude to pravé ořechové, neboť při jednom renderu provádím jednu akci 2×, a zároveň to asi nebude správně „Nettovské“ řešení.

Díky

sodae
Nette Evangelist | 250
+
0
-

kdyby člověk četl pořádně dokumentaci nalezl by životní cyklus

A v něm pěkně vidíš jaké metody se volají během životního cyklu, a z toho lze vydedukovat, že pro výpis dat z modelu a dodání do šablony existuje metoda render{název akce}

Editoval sodae (14. 12. 2010 7:36)

crossbone
Člen | 2
+
0
-

moje chyba, díky

bojovyletoun
Člen | 667
+
0
-

zřejmě máš výpis dat v action…() místo render…()