我如何在域过滤器中使用函数值

时间:2016-06-03 15:25:37

标签: openerp odoo-8 odoo-9 odoo-view

我通过以下功能获取当前登录用户ID

    def _get_user_name(self, cr, uid, *args):
    user_obj = self.pool.get('res.users')
    user_value = user_obj.browse(cr, uid, uid)
    return user_value.id or False

现在我想在这个领域的域中使用它的值......

    x_trainer_id = fields.Many2one('res.partner', string='Trainer',domain=[('user_id.id','=','get_user_name')])

怎么可能?我会非常感激....

1 个答案:

答案 0 :(得分:0)

你可以这样做:

x_trainer_id = fields.Many2one('res.partner', string='Trainer',domain=lambda self: [('id', '=', self.env.uid)])

传递 domain=lambda self: [('id', '=', self.env.uid)]