web-dev-qa-db-fra.com

Comment utiliser JPaginator sans base de données?

La question est très simple: puis-je utiliser le paginateur standard pour paginer des données qui ne proviennent pas de la base de données principale? Par exemple, pour paginer un tableau, un fichier ou des données extraites sans utiliser JDatabase?

Si c'est possible, comment puis-je faire cela?

3
mHouses

Je pense que c'est possible. Bien que je ne l'aie pas fait auparavant.

La pagination utilise comme paramètres le nombre total d'enregistrements qui, dans votre cas, est le nombre de tableaux, le nombre limite (index où commencer) et la taille de la page.

Ceci est un exemple dans un de mes modèles pour obtenir l'objet de pagination

function getPagination()
{

    if (empty($this->_pagination)) {
        jimport('joomla.html.pagination');
            $this->_pagination = new JPagination($this->getTotal(), $this->getState('limitstart'),$this->getState('limit') );
        }
    return $this->_pagination;
}

Sustitute $ this-> getTotal () pour le nombre de tableaux, etc.

En outre, sur la fonction pour récupérer les données que vous devriez avoir et une fonction équivalente à cette

$rows = $this->_getList($query, $this->getState('limitstart'), $this->getState('limit'));

pour obtenir les informations de votre structure

5
Piero Marsilio