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: :publisher — the gem orders by the group key, splits the rows into collapsible groups (chevron in the header) and shows a per-group count. With 120 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: :publisher %> <%# belongs_to, enum or a column %>
Read more: Grouping
| Cover | Title | Author names | Genre | Price | Publisher | Active | ||
|---|---|---|---|---|---|---|---|---|
|
|
|
|||||||
| — 2 | ||||||||
| Ace 2 | ||||||||
| Orbit 1 | ||||||||
![]() |
The Broken Empire 48 | Ted Chiang and Ann Leckie | Fiction | 30.49 € | Orbit | ✗ | ||
| Gollancz 1 | ||||||||
![]() |
The Broken Engine 9 | Ted Chiang, Ann Leckie, and Frank Herbert | Fiction | 32.99 € | Gollancz | ✗ | ||
| DAW 4 | ||||||||

