これは、この質問のより一般的な再定式化です(Rails 固有の部分を削除して)
RESTful Web アプリケーションのリソースにページネーションを実装する方法がわかりません。私が というリソースを持っていると仮定するとproducts
、次のうちどれが最良のアプローチだと思いますか? その理由は次のとおりです:
1.クエリ文字列のみを使用する
例えば。http://application/products?page=2&sort_by=date&sort_how=asc
ここでの問題は、ページ全体のキャッシュを使用できないことと、URL がきれいではなく覚えにくいことです。
2.ページをリソースとして使用し、並べ替えのためのクエリ文字列を使用する
例えば。http://application/products/page/2?sort_by=date&sort_how=asc
この場合、見られる問題は、使用するとまったく異なる結果が得られる可能性があり、ページキャッシュをまだ使用できないためhttp://application/products/pages/1
、一意のリソースではないことです。sort_by=price
3. ページをリソースとして使用し、URL セグメントを並べ替えに使用する
例えば。http://application/products/by-date/page/2
私は個人的にこの方法を使用しても問題ないと思いますが、誰かがこれは良い方法ではないと私に警告しました (彼は理由を教えてくれなかったので、なぜそれが推奨されないのか知っているなら、私に知らせてください)
提案、意見、批評は大歓迎です。ありがとう。