Outils pour utilisateurs

Outils du site


erp:odoo12:modeles:mapped

mapped()

Source: https://www.odoo.com/fr_FR/forum/aide-1/question/whats-is-this-self-mapped-id-124315

La fonction .mapped() simplifie l'extraction d'un champ d'un recordset sous forme de liste.

Par exemple pour extraire toutes les valeurs du champ email depuis un résultat de recherche, au lieu de faire comme ceci :

email_list = []
domain     = [('email','not in',[False,None])]
 
for rec in self.env['res.partner'].search(domain):
    if rec.email:
        email_list.append(rec.email)
 
print(email_list)
>>> [u'john@gmail.com',u'suzy@gmail.com',u'bob@hotmail.com']

Faire comme ceci :

domain = [('email','not in',[False,None])]
 
records = self.env['res.partner'].search(domain)
email_list = records.mapped('email')
 
print(email_list)
>>> [u'john@gmail.com',u'suzy@gmail.com',u'bob@hotmail.com']
erp/odoo12/modeles/mapped.txt · Dernière modification: 2020/09/19 07:27 (modification externe)