Поиск автозаполнения, добавив «Id» с «имя» в поле клиента (Котировки | Odoo 12) - PullRequest
0 голосов
/ 01 июля 2019

enter image description here

Привет

Я работаю с Odoo 12. Я хочу добавить идентификатор клиента в Котировки. Поиск автозаполнения показывает мне только имя контакта. Я попытался поработать с Odoo Studio, изменив это поле многими пользователями. Но у меня нет эффекта, который я ищу, я имею в виду: (идентификатор с именем) в одной строке с автозаполнением поиска.

Большое спасибо.

1 Ответ

0 голосов
/ 01 июля 2019

Для этого вам нужно перезаписать метод name_get (имя для отображения).

# In your client model
class Your_client_model(models.Model):
    _name = "your.clientmodel"

    @api.multi
    def name_get(self):
        return [(record.id, "[%s] %s" % (record.id, record.name)) for record in self]

И если вы хотите выполнить поиск в этом поле с помощью идентификатора, вы можете перезаписать метод name_search.

# At same model
    @api.model
    def name_search(self, name='', args=None, operator='ilike', limit=100):
        args = args or []
        domain = ['|', ('id', operator, name), ('name', operator, name)]
        client = self.search(domain + args, limit=limit)
        return client.name_get()

эффект, как показано ниже. В этом случае мы используем код на заказ.

enter image description here

...