deprecated-name-get (E8146)#

A model defines name_get, replaced by _compute_display_name.

Applies to Odoo 17.0 and later.

What it does#

Reports methods named name_get.

Why is this bad?#

Odoo 17.0 replaced name_get by the computed field display_name. An overridden name_get is no longer called, so the custom display name silently disappears. See odoo/odoo#122085.

Example#

def name_get(self):
    return [(rec.id, f"[{rec.code}] {rec.name}") for rec in self]

Use instead:

def _compute_display_name(self):
    for rec in self:
        rec.display_name = f"[{rec.code}] {rec.name}"