Pagination – proměnná s pomlčkou
- vosy
- Člen | 532
Ahoj, zkouším udělat stránkování pomocí Pagination.
Na Pagination mám vytvořenou továrničku a v šabloně mám pro vytvoření url toto
<a href="{link this, 'page' => $i}">{$i}</a>
což vytvoří proměnnou „pagination-page“
Aby se mi dělala hezká url tak v routě mám:
$router->addRoute('admin/emaily/[<pagination-page>]', 'Admin:Emaily:seznam');
nevím jak se dostat k proměnné „pagination-page“ v presenteru.
…
…
tohle
public function actionSeznam($pagination-page)
{
je asi špatně
- Marek Bartoš
- Nette Blogger | 1280
Odkazy v tomhle fungují podobně jako volání funkcí. Buď se spoléháš na numerické pořadí, nebo na názvy. V odkazu, routě i akci se musí proměnná jmenovat stejně.
Též v názvu nikdy nepoužívej pomlčku. Používá se pro přístup ke komponentám hlouběji ve stromu. Pokud tedy nechceš v routě generovat odkaz specifický právě pro parametr (handleru) komponenty, v routě by pak pomlčka smysl dávala
Editoval Marek Bartoš (10. 10. 2022 8:58)
- Lumeriol
- Generous Backer | 64
vosy napsal(a):
no právě ten odkaz je generovaný v komponentě „PaginationControl“
v šabloně komponenty
<a href="{link this, 'page' => $i}">{$i}</a>
z toho „page“ se právě vytvoří proměnná „pagination-page“
ale neví m jak se k ní mám dostat v presenteru abych věděl na jaké jsem stránce. díky
Zkus to tak, jak ti radil @PavelKravčík
Sablona komponenta:
<a href="{link this, 'paginationPage' => $i}">{$i}</a>
// nebo
<a href="{link Admin:Emaily:seznam, 'paginationPage' => $i}">{$i}</a>
nebo viz Odkazy v komponente
<a href="{plink :Admin:Emaily:seznam, 'paginationPage' => $i}">{$i}</a>
Router:
$router->addRoute('admin/emaily/[<paginationPage>]', 'Admin:Emaily:seznam');
Presenter:
public function actionSeznam(?int $paginationPage = null)