VisualPaginator zanořený v komponentě nestránkuje

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

Takže prosím vás.. Mám takový problém s VisualPaginatorem..
Když ho nechám vykreslit do šablony v komponentě, kterou pak nechám vykreslit presenterem, tak se mi navigace zobrazí správně tak, jak má, ale po kliknutí na další stránku se zobrazí stejný data, i když se mi objeví v url parametr s hodnotou další stránky.. Nevím, jestli se ještě musí nějak dodatečně nastavit routy či co (pochopil jsem ale, že není nic dál nutnýho nastavovat). Tvar parametru je pak v tomhle případě [nazev_presenteru]-[nazev_komponenty]-[page].. Díky za jakýkoliv info ;-) H.

Ondřej Mirtes
Člen | 1536
+
0
-

Ukaž kód té komponenty.

Honca
Člen | 28
+
0
-
<?php

/**
 *
 */
class Komponenta extends Control
{
	/**
	 * Constructor
	 *
	 * @param IComponentContainer $parent
	 * @param string $name
	 */
    public function __construct(IComponentContainer $parent = NULL, $name = NULL)
    {
	    parent::__construct($parent, $name);
    }

	public function renderKomponenta()
	{
		$template = $this->createTemplate();
		// nastaveni sablony

		$data	  = $this->dataSource;

		// set Paginator
		$vp = new VisualPaginator($this, 'vp');
		$paginator = $vp->getPaginator();
		$paginator->itemsPerPage = 2;
		$paginator->itemCount = count($data);

		// prepare data
		$data->applyLimit($paginator->length, $paginator->offset);


		$template->data = $data;

		$template->render();
	}
}

?>

Trosku jsem ji osekal, ale to hlavni, co me trapi, tam je..

norbe
Backer | 405
+
0
-

Na vytvoření paginatoru musíš použít továrničku (přímo v těle třídy Komponenta) a přistupovat k němu např takhle $this['paginator'].

Honca
Člen | 28
+
0
-

Díky moc, problém vyřešen ;-) H.