Le 02/07/07, renaud morvan<[EMAIL PROTECTED]> a écrit :
> > Tu peux utiliser la méthode paginate_collection définie ici :
> >
> > http://snippets.dzone.com/posts/show/389
> >
> > ce qui te permet d'écrire :
> >
> > @ville = Ville.find :first,
> >   :include => :hotels,
> >   :conditions => [ 'name = ?' , 'Paris' ]
> >
> > @hotels_pages, @hotels = paginate_collection @ville.hotels,
> >   :per_page => 10,
> >   :page => params[:page]
>
> Nan très très mauvaise perf ici, cette technique est à éviter
> IMHO, ca charge toute la collection en mémoire à chaque
> pagination donc ca tuera n'importe quel serveur dès qu'on a une
> grosse collection (Paris m'a tué ?).

L'OP voulait utiliser #paginate, càd le système de pagination
inclus dans Rails ; #paginate_collection n'est ni meilleur, ni
plus mauvais, puisqu'il utilise exactement la même technique.
Si on n'est pas gêné par les inconvénients de #paginate concernant
les performances, on ne le sera pas avec #paginate_collection.

De plus, ce n'est pas pour rien que j'ai rajouté : "Il est intéressant
aussi de regarder les autres systèmes de pagination
(paginating_find, will_paginate...)"

   -- Jean-François.

-- 
Ruby ( http://www.rubyfrance.org ) on Rails ( http://www.railsfrance.org )

--~--~---------~--~----~------------~-------~--~----~
Vous avez reçu ce message, car vous êtes abonné au groupe "Railsfrance" de 
Google Groups.
Pour transmettre des messages à ce groupe, envoyez un e-mail à l'adresse 
[email protected]
Pour résilier votre abonnement envoyez un e-mail à l'adresse [EMAIL PROTECTED]
-~----------~----~----~----~------~----~------~--~---

Répondre à