pyvelm v0.20.2¶
Release date: 2026-05-28
Patch release: pin embedded One2many sub-grids per field (list_view,
form_view, inline columns) instead of always using the comodel's
lowest-id list view.
Highlights¶
Per-field embedded list / form views¶
When a comodel has several list views (invoice lines vs journal lines), choose which drives each parent form field:
# On the model (default everywhere)
line_ids = One2many(
"account.move.line",
"move_id",
list_view="account.move.line.invoice",
form_view="account.move.line.invoice.form",
)
# On one parent form only
field("line_ids", widget="dialog", list_view="account.move.line.entry")
View refs use the same syntax as menus: short name, module/view, or
(module, name).
Inline columns (no list view required)¶
field(
"comment_ids",
widget="dialog",
columns=["body", field("active", widget="toggle")],
form_view="demo_comment.form",
)
Column precedence: columns → list_view on the form field →
list_view on the model field → lowest-id list view → all stored
scalars on the comodel.
Documentation¶
New guide: One2many on parent forms — dialog vs inline, precedence, fallbacks, worked examples.
Upgrade¶
No database migration. After changing VIEWS or field specs, bump the
module version and run pyvelm db migrate (or Apps → Sync).