Skloubení stránkování s routováním

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
stpnkcrk
Generous Backer | 190
+
0
-

Hledal jsem ve fóru, ale podobný problém jsem nenašel.

V presenteru Blog použítám třídu Paginator ke stránkování.

Routa je definovaná následovně:

<?php
$router[] = new Route("//$domainSteven/blog/?page=<page [0-9]+>", array(
	'presenter' => 'Steven:Blog',
	'action' => 'default',
	'page' => 0,
));
?>

Rád bych docílil toho, aby když $page bude 0, aby výsledná URL byla jen „/blog/“ a jinak „/blog/?page=<page>“. Výše zmínený router mi však při $page = 0; udělá URL „/blog/?page=“.

Jak docílit kýženého výsledku?

Zkusil jsem ještě jinou definici routeru, a to:

<?php
$router[] = new Route("//$domainSteven/blog/<page [0-9]+>", array(
	'presenter' => 'Steven:Blog',
	'action' => 'default',
	'page' => 0,
));
?>

Což sice udělá to co chci („/blog/“, pokud je $page = 0), ale pokud není rovno nule, nefunguje pravděpodobně předání proměnné presenteru.

Pro doplnění: Když v definici presenteru použiju 'page' => NULL, chová se to divně (jedou udělá „/?page=“ a jednou „/?page=0“.

stpnkcrk
Generous Backer | 190
+
0
-

Vyřešeno, omlouvám se. Kolidovalo mi to s jinou routou.

Jod
Člen | 701
+
0
-

Ja by som to nechal na control a neprenášal to rout. Viď DataGrid!