Related records, any view you need
A drop-in field widget that lets one2many and many2many relations switch between list and kanban, page reliably past hundreds of records, and show clear counts and errors — all without leaving the form.
The problem
Odoo locks every embedded relation into a single, fixed presentation. Order lines, project tasks, and other related records can only be viewed as one inline list, even when a kanban card layout would be far more readable. The one existing alternative on the market breaks once a relation passes roughly 40 records, leaving consultants with no reliable way to handle real-world datasets.
The solution
X2Many Multiview extends Odoo's native x2many field so any one2many or many2many relation can switch between list and kanban right on the form. It inherits native pagination, so large relations page correctly well past 40 records, and it adds a clear "showing X of Y" count, a loading indicator, and distinct load-vs-render error messages so nothing is ever silently truncated.
Everything the native widget is missing
Every capability below is implemented in the module.
List and Kanban, One Toggle Away
Switch an embedded one2many or many2many relation between a list and a kanban card layout with a single click, without leaving the parent form.
Full Create, Edit and Delete
The widget extends Odoo's native X2ManyField, so every embedded record can still be added, edited, and removed in place in either view.
Reliable Pagination Past 40 Records
Built on Odoo's native pager, related records page correctly no matter how large the relation grows — closing the exact defect that breaks the only competing app.
Showing X of Y Record Counts
A persistent count next to the toolbar always tells users exactly how many records are visible out of the total, so no one acts on a silently truncated list.
Grouped, Aggregated Totals
List footers sum key columns and kanban cards surface per-record totals, turning long relations into readable summaries instead of an endless scroll.
Loading Feedback
A spinner appears while a page of records is being fetched, so users always know the widget is working rather than stuck.
Distinct Load vs Render Errors
When something goes wrong, the widget tells users plainly whether the data failed to load or failed to render, with a Retry action — never a silent blank panel.
Works On One2many And Many2many
The same widget applies to both one2many and many2many fields, covering order lines, tags, and any other embedded relation in a form.
Your Sub-views, Your Layout
List and kanban arches are declared per field exactly like the native widget, so every column, badge, and card layout stays fully configurable.
How it works
Add the widget
Set widget="x2many_multiview" on any one2many or many2many field in a form view.
Declare the views
Add a list and a kanban sub-view under the field, exactly as you would for the native widget.
Toggle and browse
Users switch between List and Kanban from the toolbar and page through records with the native pager, however many there are.
Manage records in place
Add, edit, group, and remove embedded records directly from either view, with live counts and clear error feedback throughout.
Frequently asked
No sales fog. If your question isn't here, email us and we'll answer it the same way.
Both one2many and many2many relations. Apply widget="x2many_multiview" to either field type in a form view.
Buy it on the Odoo App Store
Purchase, download and install directly from the official Odoo Apps Store — you'll always get the latest supported build.
X2Many Multiview Widget
A list and kanban toggle on any one2many or many2many field, with reliable pagination past 40 records, showing X of Y counts, grouped totals and distinct load-versus-render errors.
Buy on Odoo App Store