Step 1: Create the boilerplate Admin Dashboard UI
Admin Scaffold generator is a tool that helps us create a complete Admin Dashboard UI for our new resource. Run the following command in our Spree application root directory:| File Type | Path | Description |
|---|---|---|
| Controller | app/controllers/spree/admin/brands_controller.rb | Handles the logic for the brands resource. |
| View | app/views/spree/admin/brands/index.html.erb | Displays the list of brands using the new tables system. |
| View | app/views/spree/admin/brands/new.html.erb | Displays the new brand form. |
| View | app/views/spree/admin/brands/edit.html.erb | Displays the edit brand form. |
| Partial | app/views/spree/admin/brands/_form.html.erb | The form partial used in new and edit views. |
| Initializer | config/initializers/spree_admin_brands_table.rb | Registers the table with columns for the index view. |
| Initializer | config/initializers/spree_admin_brands_navigation.rb | Adds navigation to the admin sidebar. |
config/routes.rb file:
config/routes.rb
http://localhost:3000/admin/brands in your browser. To reference this route in your code, you can use the spree.admin_brands_path helper.
Step 2: Customize the Table Columns
The scaffold generator creates a table initializer atconfig/initializers/spree_admin_brands_table.rb with default columns:
config/initializers/spree_admin_brands_table.rb
For complete table customization options including column types, filtering, sorting, and bulk actions, see the Admin Tables guide.
Step 3: Customize Navigation
The scaffold generator also creates a navigation initializer atconfig/initializers/spree_admin_brands_navigation.rb:
config/initializers/spree_admin_brands_navigation.rb
Adding to an Existing Submenu
To add “Brands” to the Products submenu instead, use theparent option:
config/initializers/spree_admin_brands_navigation.rb
For complete navigation API documentation including all available options, submenu creation, badges, and more, see the Admin Navigation guide.

