Invalidace celé komponenty ve stejném presenteru
- Muhahe
- Člen | 79
Zdravím, při používání ajaxu a nette jsem narazil na problém u invalidace komponenty.
Mám šablonu, kde vykresluji několik komponent a při ajaxovém požadavku bych je potřeboval překreslit. Pročetl jsem si na webu několik informací o ajaxu, invalidaci a snippetech, ale nejsem z toho schopen vyvodit postup pro můj případ.
princip mám takto:
Presenter mi vytvoří stránku, i s komponentami. V komponentě pomocí jquery dialog otevírám formulář, který po odeslání použije ajax a předá data funkci presenteru actionNewAjaxProject
<?php
public function actionNewAjaxProject(){
$form = $this->getHttpRequest()->getPost('form');
$form['start'] = new \Nette\DateTime($form['start']);
$form['end'] = new \Nette\DateTime($form['end']);
$this->projektyRepository->newProject($form);
$this->getComponent('projectList')->invalidateCOntrol();
$this->terminate();
}
?>
která data zpracuje a následně v ní volám invalidaci celé komponenty projectList. Tato komponenta byla vytvořena stejným presenterem, v kterém se nachází výše zmíněná funkce.
V logu nemám uvedenou žádnou chybu a přidání dat proběhne v pořádku, pouze se znovu nepřekreslí komponenta.
Mohl by někdo prosím poradit kde by mohl být problém?
(v komponentě se nachází i javascript (docela dost), ale ten by snad problém dělat neměl)
Editoval Muhahe (3. 12. 2013 18:40)