Skip to Content
Menu
This question has been flagged
4 Replies
20070 Views

How I can get the current user partner_id in xml  (uid.partner_id)

Avatar
Discard
Best Answer

Hi Isio-odoo,

For getting partner_id of current user in from view, you need to create a new field in you model like...

partner_id = fields.Many2one('res.partner','Customer', default=lambda self: self.env.user.partner_id)

And see the magic of new api...(There are many ways to do this...)

Avatar
Discard
Best Answer

isio

You can simply create functional field as:

partner_id = fields.Many2one('res.partner', compute='_get_partner', 'Partner')

and after that:

@api.depends('partner_id')
def _get_partner(self):
     partner = self.env['res.users'].browse(self.env.uid).partner_id
     for rec in self:
        rec.partner_id = partner.id

then in xml, add this field...

<field name="partner_id" />


Hope this helps you !

Avatar
Discard

Hello Pawan, There is no need to browse for getting the user record. You can directly get it as below. @api.depends('partner_id') def _get_partner(self): for rec in self: rec.partner_id = self.env.user.partner_id.id Thank you.

Thanks @Burhan for the update! :) @isio, you can follow Burhan as per update ...