Help

0

Onchange: How to copy the name from selection field, not value.

Avatar
Jan Krähling

Using Odoo 13 Community Version.


I want to copy the name from a selection field not the value with api onchange method.


The selection field ist "vorgang_auswahl":

    vorgang_auswahl = fields.Selection([

        ('gewinde', 'Gewinde schneiden'),

        ('senkung', 'Senken'),

        ('kantung', 'Kanten'),

        ('mikro', 'Mikroecken entfernen'),

        ('schweissen', 'Schweissen'),

        ('schleifen', 'Schleifen')],

        string="Operations", default="gewinde")



The onchange method so far:

    @api.onchange('vorgang_auswahl')

    def _onchange_vorgang_auswahl(self):

        self.name = self.vorgang_auswahl


At the moment i get the value for example "mikro", but i want "Mikroecken entfernen".

1 Comment
Avatar
Discard
1 Answer
0
Avatar
Odoo Tools
Best Answer

Use the following code:

self.name = dict(self._fields["vorgang_auswahl"]._description_selection(self.env)).get("vorgang_auswahl")

This code does not only apply the real value, but also takes into account translation of that value.

Avatar
Discard