Kaminari を使用してページ付けしたいオブジェクトがいくつかあります。ただし、最初のページには、閲覧者が独自のオブジェクトを作成できるようにする通知も表示して、そのページに表示できるオブジェクトの数を減らしたいと考えています。ただし、指定されたページ数は、この最初のページに含まれる要素が少ないことも考慮に入れる必要があります。
オブジェクトが a から z までの文字であるとしましょう。最初のページには 4 文字のみを表示する必要があります: {a,b,c,d}
、他のすべてのページには 6 文字を表示する必要があります。{e,f,g,h,i,j}, {k,l,m,n,o,p}, etc...
padding
関数と関数を見てきましたがoffset
、これらで必要な結果をまだ生成できていません。
@page
現在のページです
if @page == 1
Alphabet.page(@page).per(4)
else
Alphabet.page(@page).per(6).padding(2)
end
=> {a,b,c,d},{i,j,k,l,m,n}, etc...
if @page == 1
Alphabet.page(@page).per(4)
else
Alphabet.page(@page).per(6).offset(4)
end
=> {a,b,c,d},{e,f,g,h,i,j}, {e,f,g,h,i,j} etc...
offset メソッドも current_page を正しく設定しないため、これは正しいメソッドとは思えません。
{a,b,c,d}, {e,f,g,h,i,j}, {k,l,m,n,o,p}, etc...
最初のページに正しいページ数 (この場合は 5) を表示しながら、のようなページネーションを取得するにはどうすればよいですか?