C'est plus générique de la reformulation de cette question (avec l'élimination des Rails spécifiques pièces)
Je ne suis pas sûr de la façon de mettre en œuvre la pagination sur une ressource dans un cadre Reposant de l'application web.
En supposant que j'ai une ressource appelée products
, que pensez-vous est la meilleure approche, et pourquoi:
1. En utilisant seulement les chaînes de requête
par exemple. http://application/products?page=2&sort_by=date&sort_how=asc
Le problème ici est que je ne peux pas l'utilisation complète de la page mise en cache et aussi l'URL n'est pas très propre et facile à retenir.
2. À l'aide de pages que les ressources et les chaînes de requête pour le tri
par exemple. http://application/products/page/2?sort_by=date&sort_how=asc
Dans ce cas, le problème est de voir qu' http://application/products/pages/1
n'est pas une ressource unique, puisque l'utilisation des sort_by=price
peut donner un résultat tout à fait différent et je ne peux toujours pas utiliser le cache de page.
3. À l'aide de pages de ressources et une URL segment par tri
par exemple. http://application/products/by-date/page/2
Personnellement, je ne vois pas de problème dans l'utilisation de cette méthode, mais quelqu'un m'a prévenu que ce n'est pas la bonne voie à suivre (il n'a pas donner une raison, donc si vous savez pourquoi il n'est pas recommandé, s'il vous plaît laissez-moi savoir)
Toutes les suggestions, les opinions, les critiques sont plus que bienvenus. Merci.