Skip to Content
Меню
Вам необхідно зареєструватися, щоб взаємодіяти зі спільнотою.
Це запитання позначене
5 Відповіді
49044 Переглядів

I have a field many2one relation to res.users like this : 'salesman':fields.many2one('res.users', string='Salesman').

I want default value it field is current user ID (current login) like Administrator, Custom User, etc. How to do it?

Аватар
Відмінити
Найкраща відповідь

This is so short for getting the current user info:

self.env.user

Аватар
Відмінити
Найкраща відповідь

@Miftah

under the _defaults you can write the following code

_defaults={

'salesman':lambda self, cr, uid, ctx=None: uid

}

hope this helps !!

Аватар
Відмінити

In the 8.0 API this would be something like this: salesman = fields.Many2one( string="Salesman", comodel_name='res.users', default= lambda self: self.env.user.id )

Найкраща відповідь

Hello,

You can use below code.

context = self._context

current_uid = context.get('uid')

user = self.env['res.users'].browse(current_uid)

Hope this help you.

Best Thanks,

Ankit H Gandhi.

Аватар
Відмінити

thank you very much

Найкраща відповідь

Why don't you take a look at sale.order model from odoo/addons/sale/sale.py.  It has user_id defined which - AFAIK - mimics what you need.  It uses _default as well as @Emipro had suggested.

Аватар
Відмінити
Найкраща відповідь

salesperson = fields.Many2one('res.users', string="Salesperson", default=lambda self: self.env.user)

Аватар
Відмінити
Related Posts Відповіді Переглядів Дія
1
бер. 15
8660
2
вер. 21
9947
2
черв. 20
14023
4
лист. 15
6229
1
бер. 15
4972