Odoo Help


This community is for beginners and experts willing to share their Odoo knowledge. It's not a forum to discuss ideas, but a knowledge base of questions and their answers.


how to override name_get method in new api

on 8/27/14, 4:13 AM 3,125 views

can anbody tell me override name_get method in new api

This question has been included in the official documentation.
On 8/27/14, 6:18 AM

In the new api, it's the field display_name. Just override the field display name to a computed one.

 class res_partner(Model):

        display_name = fields.Char(
            string='Name', compute='_compute_display_name',

        @api.depends('name', 'parent_id.name')
        def _compute_display_name(self):
            names = [self.parent_id.name, self.name]
            self.display_name = ' / '.join(filter(None, names))

This question has been included in the official documentation.
Burhan Vakharia
On 8/24/16, 3:00 AM

Learn – Overriding name_get method in Odoo 8 with Example & Screenshots - Odoo Technical


This question has been included in the official documentation.
Toni Mas
On 12/9/14, 11:33 AM

I had some problems with this until I read this post by Martin Trigaux in the mailing list:


Perhaps is a good idea to update the docs.


Hello, Sorry to contradict you but it's actually still name_get that you should override. The initial intended behaviour was indeed to have display_name as replacement of name_get. However there were lot's of issues with the initial implementation and it was not backward compatible with the old api and we have to partially go back to old behaviour[1].

So the current behaviour of the name_get/display_name is the following:

name_get is still the main function used for rendering display_name is a computed field that will use name_get If you want to change both, you should still override name_get (see event for example[2]).

Changing the method of display_name would affect only display_name, not name_get (can be what we want[3] but usually not).

We may change one day to fully use display_name and drop name_get but that means breaking the backward-compatibility.

Hope it's clear.

[1] https://github.com/odoo/odoo/commit/f138aa26085d103a88dbd8bb73fb8bf5517298ad

[2] https://github.com/odoo/odoo/blob/8.0/addons/event/event.py#L194

[3] https://github.com/odoo/odoo/blob/8.0/openerp/addons/base/res/res_partner.py#L232


Martin Trigaux Odoo (Formerly OpenERP)

Your Answer

Please try to give a substantial answer. If you wanted to comment on the question or answer, just use the commenting tool. Please remember that you can always revise your answers - no need to answer the same question twice. Also, please don't forget to vote - it really helps to select the best questions and answers!

About This Community

This community is for professionals and enthusiasts of our products and services. Read Guidelines

Question tools

3 follower(s)


Asked: 8/27/14, 4:13 AM
Seen: 3125 times
Last updated: 8/24/16, 3:00 AM