Paginator – nejde pouze první strana

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

Zdravím, patlám se teď se stránkováním a narazil jsem na chybu, se kterou nevím pohnout. Všechny stránky mi po rozdělení fungují, pouze na první stránce se vůbec žádné produkty nezobrazí. Když jsem to rozdělil např. po dvou, tak opět, další stránky fungují, jen první strana s prvními (resp. podle řazení posledními) nic nezobrazí. Může mi prosím někdo poradit kde mám chybu?

Presenter:

protected function createComponentPaginator() {
    $visualPaginator = new VisualPaginator();
    return $visualPaginator;
}

public function renderDefault() {
    $model = $this->products;
    $paginator = $this['paginator']->getPaginator();
    $paginator->itemsPerPage = 3;
    $paginator->setBase(1);
    $paginator->itemCount = $model->countNews()->pocet;
    $mainProducts = $model->fetchImagesAndNews($paginator->offset, $paginator->itemsPerPage);

    $this->template->mainProducts = $mainProducts;
    if ($this->isAjax()) {
        $this->invalidateControl('list');
    }
}

Model:

public function fetchImagesAndNews($limit, $offset) {
    return $this->connection->query(
                    'SELECT product.prod_id, product.prod_name, product.prod_price, product.prod_describe,
        image.image_id, image.image_path, image.product_prod_id
        FROM product, image
        WHERE product.prod_id = image.product_prod_id
        AND product.prod_isnew = 1
        ORDER BY product.prod_id DESC LIMIT ? OFFSET ?', $limit, $offset);
}

public function countNews() {
    return $this->connection->query(
                    'SELECT COUNT(*) AS pocet FROM product, image
        WHERE product.prod_id = image.product_prod_id
        AND product.prod_isnew = 1'
    )->fetch();
}
natrim
Člen | 73
+
0
-

mas prohozeny offset a limit u ‚fetchImagesAndNews‘? .)

Draffix
Člen | 146
+
0
-

natrim napsal(a):

mas prohozeny offset a limit u ‚fetchImagesAndNews‘? .)

Už to šlape, sem to změnil v modelu a zapomněl v presenteru. Taková kravina… Díky moc, nevšiml sem si :-)