Paginator neudrží url a přepíše ho na presenter

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
KillPrd
Začátečník | 110
+
0
-

Ahojte mů problém je že mám klasickou url www.neco.cz/…m-sveta.html je to v presenteru kategorie a jakmile na teto adrese použiju paginator přepíše stránku na www.neco.cz/kategorie/?…
jak ho donutit aby udělal zachoval url a za ní přidal proměnnou vp-page?
děkuji za rady

Felix
Nette Core | 1189
+
0
-

Jake mas nastaveni rout a jak tvoris odkaz?

KillPrd
Začátečník | 110
+
0
-

ROUTY:

<?php
$katRouter = new KategorieRoute('<url>', array(
			'id' =>array(
				NRoute::FILTER_OUT => callback($filters, 'out_k'),
                        ),
                        'presenter' => 'Kategorie',
                        'action' => 'default'
                ));
<a href="{link this ,  'page' => $step}">{$step}</a>
?>
Felix
Nette Core | 1189
+
0
-

Kdyz teda odkazujes na stranku paginatoru, tak bys podle me mel mit routu jako

$katRouter = new KategorieRoute('<url>?strana=<vp-page>')->..
KillPrd
Začátečník | 110
+
0
-

No tohle jsem zkoušel problémem je že všechny routy přebije ta posledni
tedy tato

<?php
$frontRouter[] = new NRoute('<presenter>/<action>[/<url>]', 'Default:default');
?>

pokud odstraním tuto routu napíše že nemá routu pro .....
pro jistotu posílám celý bootsramp

<?php

/**
 * My Application bootstrap file.
 */




// Load Nette Framework
require LIBS_DIR . '/Nette/loader.php';




// Configure application
$configurator = new NConfigurator;
$configurator->setProductionMode(FALSE);

// Enable Nette Debugger for error visualisation & logging
/*$configurator->setProductionMode($configurator::AUTO);*/
$configurator->enableDebugger(dirname(__FILE__) . '/../log');

// Enable RobotLoader - this will load all classes automatically
$configurator->setTempDirectory(dirname(__FILE__) . '/../temp');
$configurator->createRobotLoader()
	->addDirectory(APP_DIR)
	->addDirectory(LIBS_DIR)
	->register();

// Create Dependency Injection container from config.neon file
$configurator->addConfig(dirname(__FILE__) . '/config.neon');
$container = $configurator->createContainer();
$filters = new Filters($container);
dibi::connect($container->params['database']);


$url = $_SERVER['REQUEST_URI'];
$url=explode("/",$url);
$url = $url[1];
$url=explode("?",$url);
$url = $url[0];
$k = dibi::fetchSingle("SELECT count(id) FROM [kategorie] WHERE url = %s",$url);
$p = dibi::fetchSingle("SELECT count(id) FROM [polozky] WHERE url = %s",$url);
$c = dibi::fetchSingle("SELECT count(id) FROM [clanky] WHERE url = %s",$url);


// Setup router
	$container->router[] = new NRoute('index.php', 'Front:Default:default', NRoute::ONE_WAY);

	$container->router[] = $adminRouter = new NRouteList('Admin');
	$adminRouter[] = new NRoute('admin/<presenter>/<action>', 'Default:default');

	$container->router[] = $frontRouter = new NRouteList('Front');

	$frontRouter[] = new NRoute('sitemap/sitemap.xml', 'Sitemap:default');
	$frontRouter[] = new NRoute('zbozi/zbozi.xml', 'Zbozi:default');
	$frontRouter[] = new NRoute('zbozi/heureka.xml', 'Zbozi:heureka');
	$frontRouter[] = new NRoute('/login.html', 'Default:login');
	$frontRouter[] = new NRoute('/registrace.html', 'Default:registrace');
	if($k>0){

		$katRouter = new KategorieRoute('<url>?strana=<vp-page>', array(
			'id' =>array(
				NRoute::FILTER_OUT => callback($filters, 'out_k'),
                        ),
                        'presenter' => 'Kategorie',
                        'action' => 'default'
                ));
	}

	if($p>0){
		$pRouter = new PolozkyRoute('<url>?strana=<vp-page>', array(
			'id' =>array(
				NRoute::FILTER_OUT => callback($filters, 'out_p'),
                        ),
                        'presenter' => 'Detail',
                        'action' => 'default'
                ));
	}
	if($c>0){
		$cRouter = new ClankyRoute('<url>?strana=<vp-page>', array(
			'id' =>array(
				NRoute::FILTER_OUT => callback($filters, 'out_c'),
                        ),
                        'presenter' => 'Clanek',
                        'action' => 'default'
                ));
	}

	if($k>0){
		$katRouter->context = $container;
		$frontRouter[] = $katRouter;
	}
	if($p>0){
		$pRouter->context = $container;
		$frontRouter[] = $pRouter;
	}
	if($c>0){
		$cRouter->context = $container;
		$frontRouter[] = $cRouter;
	}

	$frontRouter[] = new NRoute('<presenter>/<action>[/<url>]', 'Default:default');




// Configure and run the application!
$container->application->run();


?>

Snažil jsme se odkaz tvořit ručně tedy
<a href=„?vp-page={$paginator->page + 1}“>Další »</a>
ale nastavá problém protože mám na jedné stráne 3 pagiantory a potřebují se identifikovat v proměnné tedy vp1-page=2 vp2-page= 2 atd…
a takhle když vypisuji ručně tak je to pouze vp-page=2
stačilo by protlačit do paginatoru proměnnou s číslem paginatoru

KillPrd
Začátečník | 110
+
0
-

tak jsem to vyřešil přidání proměnné přímo do paginatoru a pak jsem si jí posílal $paginator->vp = $n dále pak generuji odkaz <a href=„?vp{$vp}-page={$paginator->page + 1}“>Další »</a>

Díky