Rails で will_paginate を使用してページネーションを使用しています。99 個のアイテムがロードされたテーブルがあります。次のコマンドを使用して、2 番目のページの最初の要素を取得しようとすると:
Item.paginate(page: 2).first
Rails の戻り値:
#<Item id: 2, ...>
ただし、正しい答えは次のとおりです。
#<Item id: 32, ...>
興味深いことに、「first」メソッドを使用せずに、結果の配列の最初の要素にインデックスを付けると、正しい答えが得られます。
Item.paginate(page: 2)[0]
戻り値:
#<Item id: 32, ...>
なんで?