Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Pages: 1
Messieurs dames bonjour.
J'ai une question, ma foi simple, mais qui me taraude depuis belle lurette.
Pour du listing de données avec pagination, dans la construction de ma requête, j'utilise le fameux limitPage
$select = $table->select() ->where(...) ->limitPage($page_actuelle, $nombre_enregistrements_par_page);
Ceci est très pratique, mais, pour le système de pagination que j'ai développé, je dois récupérer le nombre total d'enregistrements, afin de connaitre mon nombre de page.
Donc, à chaque fois que j'ai une méthode qui récupère des données avec limitPage, je dois écrire sa petite sœur qui récupère exactement les mêmes choses (->where() identique) mais sans limitPage, pour renvoyer le count du résultat.
Je me dis qu'il serait intéressant de pouvoir récupérer le tout avec une seule méthode. Alors voilà ma question :
Avant de me lancer dans une surchage bien dangereuse de ce qui existe, n'y a t-il pas déjà un moyen de récupérer la valeur de ce count dans ma première méthode, et ceci d'une d'une manière simple et propre ?
Merci d'avance.
Dernière modification par neojick (20-08-2009 10:54:43)
Hors ligne
salut,
Je ne suis pas certain qu'il existe une telle méthode dans ZF.
Une discussion a eu lieu dans le cours de ce topic : http://www.z-f.fr/forum/viewtopic.php?pid=19885#p19885 , où je proposais une manière d'y arriver mais en SQL pur que sekaijin a commentée dans la foulée. Il n'en est pas sorti une alternative propre à Zend toutefois...
Hors ligne
Hello,
Zend_Paginator fait tout ça pour toi
A+
Hors ligne
neojick a écrit:
Oui mais Zend_Paginator parcoure toute la table pour récupérer seulement x enregistrements ?
non, il fait 2 requetes uniquement, le select avec la limitation que tu lui donnes et le select count
Hors ligne
Pages: 1