subtask_kanban_list
The open sub-tasks on a task's kanban card, each with an editable state, plus an inline field for adding another.
August 27, 2026Updated August 29, 20264 min read
| Technical name | subtask_kanban_list |
|---|---|
| Views | kanban (view widget, <widget> element) |
| Module | project, the Project app |
| Used in core | The task kanban board in project |
| Versions | Odoo 20.0, Odoo 19.0, Odoo 18.0, Odoo 17.0 |
| No-code setup | No. It is set in view XML and depends on module-specific data |
| Alternatives | subtask_counter, subtasks_one2many, project_task_state_selection |
What the kanban sub-tasks does
What this means for your team
Supported options in Odoo 19
| Option | Type | What it does |
|---|---|---|
isReadonly | optional prop | Declared on the component. Governs whether the card offers editing. |
the state filter | built into the getter | Hides sub-tasks whose state means done or canceled. |
the count cache | optimization | The filtered list is only rebuilt when the record count changes. |
the runtime field information | built by the widget | Names the task state selection widget and a view type, producing a working state field inside the card. |
The filter result is cached deliberately. It is only recomputed when the record count changes, which keeps a board of many cards from refiltering on every render. The consequence is that a state change alone does not remove a row until the count moves.
Working examples
A cache with a visible consequence
Version compatibility
| Version | Status | Notes |
|---|---|---|
| Odoo 20.0 | Partial / changed | Not released. Newer conventions and the view type renamed from kanban to card. |
| Odoo 19.0 | Verified | Verified against the shipped source. |
| Odoo 18.0 | Verified | Same filtering, caching and inline creation. |
| Odoo 17.0 | Verified | Same approach with older component conventions. |
| Odoo 16.0 | Not available | Widget does not exist. |
Upgrade note. Present since Odoo 17. The filtering, the caching and the inline creation have been stable across those versions.
What is changing in Odoo 20
Common problems and fixes
| Symptom | Cause and fix |
|---|---|
| A closed sub-task stays on the card | The filter is cached and only rebuilt when the record count changes. Reload the board; the state change alone does not move the count. |
| Creating refuses with a notification | The name was empty or whitespace only. Type a name; blank records are refused deliberately. |
| A new sub-task appears at the top | It should not; the sequence is one above the current highest. Check the board's own ordering. |
| The new sub-task has no project | The parent task has none to inherit. Set the project on the parent first. |
| The state cannot be changed | The read-only flag is set on the widget. Check how the card template passes it. |
| The widget is missing | The Project module is not installed in that database. Install Project. |
Kanban sub-tasks vs the alternatives
| Widget | Best for | Key difference |
|---|---|---|
subtask_kanban_list | Showing and updating open sub-tasks directly on a kanban card | A cached filter of open sub-tasks with a runtime-built state field and inline creation |
subtask_counter | Sub-task progress in a list | A counter rather than rows |
| subtasks_one2many | Sub-tasks on the task form | A full relation for bulk editing |
| project_task_state_selection | The state field itself | The field this widget builds at runtime |
Frequently asked questions
Which sub-tasks are shown?+
Why does a closed sub-task stay visible?+
How does the state field work inside a widget?+
What does a new sub-task inherit?+
Which versions have it?+
Boards that reflect what is actually happening
Kanban only helps when updating a status is faster than not updating it. We design Odoo Project boards and sub-task structures around your team's real cadence, on versions 16 through 19.
Book a free consultation