komponenta volajuca paginator – ako predat offset

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

Dobry den,

mam komponentu Projekty, ktora obsahuje paginator. problem je v tom, ze v komponente vytvaram dalsiu komponentu

<?php

    public function createComponentStrankovac()
    {
        $strankovac = new VisualPaginator;
        $paginator = $strankovac->paginator;
        $paginator->itemsPerPage = $this->projektovNaStranku;
        $paginator->itemCount = $this->projektovSpolu;

        return $strankovac;
    }
?>

problem je v tom, ze hlavna komponenta Projekty pouziva data, ktore su zavisle na $paginator->offset

netusim ako vyriesit predanie offsetu do presenteru, pretoze vnorena komponenta sa vola az pri vykreslovani a render a render hlavnej az na konec

dakujem

Jan Tvrdík
Nette guru | 2595
+
0
-

Zkus uvnitř té komponenty Projekty použít $this['strankovac']->paginator->offset.

japlavaren
Člen | 404
+
0
-

bohuzial nepomohlo, Component with name ‚strankovac‘ does not exist. asi to budem muset vyriesit na urovni presenteru,

len mam dotaz – ten isty vyhladavaci form je pouzity na indexe i v katalogu

k tomu pouzitiu v presentery mam dotaz – dokazem formu nastavit, aky presenter ho ma spracovavat?
priklad mam na vsetkych strankach search (definovany v basePresentery) a vyhladavanie smeruje na presenter Search . ako to nastavit. dakujem

Jan Tvrdík
Nette guru | 2595
+
0
-

japlavaren napsal(a):

bohuzial nepomohlo, Component with name ‚strankovac‘ does not exist.

A uvnitř čeho teda ten strankovac máš?

japlavaren
Člen | 404
+
0
-

mam komponentu Projekty ktora vypise zoznam projektov, na zaklade dat ktore dostane z presenteru. paginator mam ako komponentu v komponente Projekty.

Jan Tvrdík
Nette guru | 2595
+
0
-

Něco máš jinak, než popisuješ, protože konstrukce

<?php
class ProjektyControl extends Control
{
	public function createComponentStrankovac()
	{
		$strankovac = new VisualPaginator;
		$paginator = $strankovac->paginator;
		$paginator->itemsPerPage = $this->projektovNaStranku;
		$paginator->itemCount = $this->projektovSpolu;

		return $strankovac;
	}

	// (...)

	public function foo()
	{
		$this['strankovac']->paginator->offset; // musí fungovat
	}
}

musí fungovat.

japlavaren
Člen | 404
+
0
-

aha, takto som to neskusal, dakujem