Při ajaxovém volání se neukládají hodnoty formuláře do session

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

Zdravím,
po několikahodinové debugování to vzdávám a prosím vás o radu.
Ve zkratce: mám filtrovací formulář, jehož hodnoty se ukládají (onSuccess) do session a při obyč (!isSubmitted()) načtení stránky se naplní hodnotama ze session.
Potom se (opět v onSuccess) a obnoví (redrawControl) se tabulka s daty (i formulářem, který má správně nastavené hodnoty).

Zjistil jsem, že když odešlu formulář bez ajaxu (ctrl+klik na submit tlačítko) tak se vše uloží ok a načte taky.
Pokud použiju ajaxové volání tak se jakoby session neuloží.

Nevíte prosím, kde by mohla být ta drobná chybka?
Díky

edit: kod smazán, chyba byla jinde

Editoval CZechBoY (2. 12. 2015 12:04)

David Matějka
Moderator | 6445
+
0
-

Co pouzivas za session handler? soubory? redis?

CZechBoY
Člen | 3608
+
0
-

Obycejne session.

CZechBoY
Člen | 3608
+
0
-

Tak jsem na to přišel.
Myslel jsem si, že

$presenter->getParameters()

vrací parametry jen pro presenter (a nikoliv komponenty), takže jsem blbě sestavil klíč pro konkrétní formulář na stránce.

Nakonec jsem použil

$presenter->getRequest()->getParameters()

a vyfiltroval parametry, které obsahují IComponent::NAME_SEPARATOR.

Editoval CZechBoY (2. 12. 2015 12:14)

David Matějka
Moderator | 6445
+
0
-

$presenter->getParameters() by mel obsahovat pouze parametry pro presenter. Co tam bylo navic?

CZechBoY
Člen | 3608
+
0
-

POST z formuláře, který je v komponentě, která je v komponentě, která je v komponentě (nebo tak nějak :D)
POST data ze skoro prázdné formuláře (nastavené jen type[]):

Content-Disposition: form-data; name="from"

Content-Disposition: form-data; name="to"

Content-Disposition: form-data; name="type[]"
1

Content-Disposition: form-data; name="id_s_user"

Content-Disposition: form-data; name="browser"

Content-Disposition: form-data; name="os"

Content-Disposition: form-data; name="_token_"
aeucyexkilLaKR7KAFTVQSMaa/M3Vz2fL7fxs=

Content-Disposition: form-data; name="do"
actions_table-filtersForm-form-submit

Content-Disposition: form-data; name="send"