Späť na predchádzajúcu stránku
- SontoEremo
- Člen | 341
Zdravím…
Neriešil náhodou niekto link späť na predchádzajúcu stránku vo
VisualPaginator?
Teda som na stránke 3 tam idem do editácie a potrebujem sa späť dostať z editácie na stránku 3 a nie na default.
Neriešil niekto z Vás tento problém?
Všetkým vopred ďakujem.
- vitkutny
- Člen | 73
Tohle přesně řeší tlačítko zpět v prohlížeči. Odkaz v menu, drobečkovce správně odkazuje na default stránku.
Pokud chceš tohle chování měnit, musíš si ukládat ze které stránky
jsi přišel do url (při použití session by se to pomíchalo ve více
tabech), a dle toho vytvářet odkazy zpět.
Na editaci přesměruješ s persistentní proměnou backlink do které
předáš $presenter->storeRequest(); a v editaci (případně obecně
v layoutu) mít speciální tlačítko zpět, které bude odkazovat vždy na
request z URL. Třeba pomocí signálu handleBack(), který zavolá
$presenter->restoreRequest() s persistentním parametrem backlink
- SontoEremo
- Člen | 341
Vracia to len default robené podla Tohto
public function actionBack($backlink = null) {
$this->backlink = $backlink;
}
public function handleBack() {
if ($this->backlink !== NULL) {
$this->application->restoreRequest($this->backlink);
}
$this->redirect('default');
}
<a href="{plink back!}" class="btn btn-info noBorder noRadius">
Naspäť
</a>
- SontoEremo
- Člen | 341
Stále ma to vráti len na exemple.xx/zoznam/ a nie napr. exemple.xx/zoznam/3
vitkutny napsal(a):
namísto
public function actionBack($backlink = null) { $this->backlink = $backlink; } \— jen definuj public property s anotací persistent, v $presenter->loadState se tam hodnota doplní automaticky /—php /** * @var string * @persistent */ public $backlink;
- SontoEremo
- Člen | 341
Vyriešené! ASI? :)
Takže do linku v default.latte
<a href="{plink detail, id=>$order->id, backlink => $presenter->storeRequest()}" class="btn-link text-danger">
Zobraziť
</a>
V presenteru
public function handleBack() {
if ($this->backlink !== NULL) {
$this->restoreRequest($this->backlink);
}
$this->redirect('default');
}
A potom šablóna detail z ktoréj sa chcem dostať späť na stránku napr. /3
<a href="{plink back!}" class="btn btn-info noBorder noRadius">
<i class="fa fa-reply"></i>
</a>
Funguje dobre teda vráti ma to späť tam odkiaľ som prišiel :)
P.S.: samozrejme ak sa nájde lepší spôsob uvítam