Grouped table
How this page is built
the gem renders it — this is all you write
Grouping is a render-time arrangement, like the layout. Add group_by: :genre — the gem orders by the group key, splits the rows into collapsible groups (chevron in the header) and shows a per-group count. With 11 books, groups start collapsed beyond config.group_collapse_threshold (default 50), opening only the first; the open ones live in ?open=, so a half-expanded view is copy-pasteable.
app/views/groups/index.html.erb
<%= crud_collection @books, group_by: :genre %> <%# belongs_to, enum or a column %>
Read more: Grouping
| Cover | Title | Author names | Genre | Price | Publisher | Active | ||
|---|---|---|---|---|---|---|---|---|
|
|
||||||||
| Nonfiction 4 | ||||||||
![]() |
The Broken Archive 1 | Frank Herbert, Ted Chiang, and Ann Leckie | Nonfiction | 9.59 € | Orbit | ✓ | ||
![]() |
The Endless Mirror 2 | Ann Leckie, Mary Shelley, and Ursula Le Guin | Nonfiction | 28.63 € | Vintage | ✓ | ||
![]() |
The Endless Empire 5 | Ann Leckie | Nonfiction | 25.88 € | Vintage | ✓ | ||
![]() |
The Broken Garden 6 | Stanisław Lem, Ursula Le Guin, and Iain Banks | Nonfiction | 19.85 € | Orbit | ✓ | ||



