Pagination
How this page is built
the gem renders it — this is all you write
The gem doesn't paginate on its own (no surprise row limits). You paginate in your controller with your own gem — here kaminari — and because a kaminari-paginated relation carries its page state, crud_collection notices and renders the footer pager automatically. The pager's ?page= composes with the gem's own filter/sort params (120 seeded books, 8 per page).
app/controllers/books_controller.rb
@query = CrudComponents::Query.new(Book, params, fieldset: :index, ability: current_ability)
@books = @query.apply(Book.all).page(params[:page]).per(8) # kaminari
app/views/pagination/index.html.erb
<%= crud_collection @books, query: @query %> <%# the footer pager renders itself %>
Read more: Pagination
| Cover | Title | Author names | Genre | Price | Publisher | Active | ||
|---|---|---|---|---|---|---|---|---|
|
|
|
|
||||||
![]() |
The Endless Dune 17 | Joe Abercrombie, Mary Shelley, and Stanisław Lem | Fiction | 18.69 € | Tor Books | ✓ | ||
![]() |
The Quiet Door 18 | Becky Chambers | Scifi | 21.79 € | Gollancz | ✗ | ||
![]() |
The Hidden Mirror 19 | Joe Abercrombie, Ursula Le Guin, and Adrian Tchaikovsky | Fiction | 37.51 € | Vintage | ✓ | ||
![]() |
The Burning Tower 20 | Ann Leckie | Scifi | 14.56 € | Ace | ✓ | ||
![]() |
The Endless City 21 | Ursula Le Guin, Frank Herbert, and Octavia Butler | Scifi | 36.46 € | Vintage | ✓ | ||
![]() |
The Hidden Archive 22 | Becky Chambers, Mary Shelley, and Frank Herbert | Fiction | 23.21 € | — | ✓ | ||
![]() |
The Hidden Engine 23 | Stanisław Lem, Adrian Tchaikovsky, and Becky Chambers | Scifi | 40.55 € | DAW | ✗ | ||
![]() |
The Ancient Mirror 24 | Mary Shelley | Fiction | 33.42 € | Gollancz | ✓ | ||







