The Ancient Engine 101
How this page is built
the gem renders it — this is all you write
crud_record renders the record as a definition list with the same type-aware cells as the table. The column picker is reusable here too: crud_column_picker @book (the gear, top-right) submits ?cols= to this page, and crud_record @book, picked_columns: @visible narrows the list to match — same mechanism as the table, no JS to open. Below it, an embedded reviews collection is static (query: :static). The URL is the book's slug (identify_by :slug).
app/controllers/books_controller.rb
@visible = CrudComponents.selected_columns(params) # the picker's ?cols=, for crud_record (persist it if you like)
app/views/books/show.html.erb
<%= crud_column_picker @book %> <%# the gear, reusable outside a table %>
<%= crud_record @book, picked_columns: @visible %> <%# honors the picker's selection %>
Read more: Record view · Column picker
- Id
- 5,895
- Title
- The Ancient Engine 101
- Subtitle
- A novel of the Door
- Slug
- the-ancient-engine-101
- Blurb
-
The Ancient Engine 101 — silent tales of the dune.
- A story in 4 parts
- Set in the Mirror
- Price
- 37.89 €
- Pages
- 533
- Published on
- 1966-10-08
- Active
- ✓
- Genre
- Fiction
- Metadata
{ "isbn": "978-130511435", "binding": "hardcover" }- Internal token
- —
- Publisher
- Vintage
- Created at
- 28 Jun 19:59
- Updated at
- 28 Jun 19:59
- Cover

- Manual
- the-ancient-engine-101-manual.pdf
- Reviews
- Alan on The Ancient Engine 101, Ada on The Ancient Engine 101, Donald on The Ancient Engine 101
- Comments
- —
- Authors
- Adrian Tchaikovsky
- Author names
- Adrian Tchaikovsky
Reviews (static embedded collection — query: :static)
| Book | Reviewer name | Rating | Body | Created at | |
|---|---|---|---|---|---|
| The Ancient Engine 101 | Alan | ★★★★★ | The world-building is superb. | 28 Jun 19:59 | |
| The Ancient Engine 101 | Ada | ★★★☆☆ | Not my cup of tea. Slow start, great finish. | 28 Jun 19:59 | |
| The Ancient Engine 101 | Donald | ★★★★★ | Slow start, great finish. Not my cup of tea. | 28 Jun 19:59 |