Zpetne odkazy

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

Situace: mam administraci (treba clanku) a na uvodni strance ve vypisu clanku si naklikam trideni podle nejakych sloupcu, prekliknu se na dalsi stranku a nasledne kliknu na nejaky edit button. Dostanu se na nejakou editaci clanku a at uz kliknu na ‚OK‘ ne ‚Storno‘, tak bych se potreboval vratit presne tam, kde jsem skoncil (tzn. aktivni trideni a na takovou stranku, kde jsem byl). Rad bych pro toto pouzil metody storeRequest() a nasledne restoreRequest().

Delal jste nekdo uz neco takoveho a pripadne jak? Vidim tam totiz trochu problem v tom, ze storeRequest() uklada request do sesstion a kdyz ho nevyuziju, tak zustane v session vyset. Coz by pomerne rychle mohlo vyustit v zahlceni sesstion. Proto by me zajimalo jak to kdo resite:-)

Diky moc

Jod
Člen | 701
+
0
-

Mohol by si tam ukladať dve hodnoty. Jedna z predchádzajúcej stránky a druhá z aktuálnej. Pri načítani stránky si uložíš jednu ako aktuálnu a tú ktorá tam bola nastavíš ako predchodziu. Ak sa nechceš vracať viac ako o jednu stránku malo by to fungovať.

Dva klúče v session myslim nejak nezahltia session pod dobu jej živostnosti.

Celkom dobrým riešenim sa mi zdá použiť perzistentný parameter ref a tam vkladať link z ktorého si prišiel tak ako to robí Facebook :) . Zdá sa mi to ako celkom dobré a málo pracné riešenie :)

David Grudl
Nette Core | 8284
+
0
-

Doporučuju ukládat link jako URL a ne ve tvaru Presenter:action, z bezpečnostních důvodů.

arron
Člen | 464
+
0
-

No ja bych pomerne rad vyuzil storeRequest a restoreReqest a nejak si prenasel to ‚id‘ ktere storeRequest generuje. Jenom nevim jak rozumne nalozit s temi ulozenymi requesty, ktere nevyuziju:-)

Jod
Člen | 701
+
0
-

Jedine asi, žeby si si sám napísal funkciu ktorá ti ich bude priebežne mazať a nechá ti len posledné potrebné.

David Grudl
Nette Core | 8284
+
0
-

storeRequest bylo primárně navrženo pro řešení situace, kdy někdo odešle formulář a během té doby byl odhlášen, proto se requesty ukládají jen na 10 min.

arron
Člen | 464
+
0
-

David Grudl napsal(a):

storeRequest bylo primárně navrženo pro řešení situace, kdy někdo odešle formulář a během té doby byl odhlášen, proto se requesty ukládají jen na 10 min.

Aha:-) Takze budu muset ukladat cele url (ziskam ji nejak v kompletnim tvaru?) a pak na ni redirectovat (redirectUri?).

A nebo bych mozna zkusil napsat neco podobneho jako storeRequest x restoreRequest, ale budu si je hlidat, aby se mi nekupily:-)

Diky:-)

kravčo
Člen | 721
+
0
-

David Grudl napsal(a):

storeRequest bylo primárně navrženo pro řešení situace, kdy někdo odešle formulář a během té doby byl odhlášen, proto se requesty ukládají jen na 10 min.

Akurát toto som nedávno riešil, no nevedel som, že na to existuje nejaký built-in mechanizmus… Musím preštudovať ten storeRequest…