首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Odoo-8中获取日志用户的雇员id

在Odoo-8中获取日志用户的雇员id
EN

Stack Overflow用户
提问于 2016-02-03 01:57:28
回答 3查看 6.7K关注 0票数 1

好日子,我在过滤Odoo 8字段时遇到了问题,我只想选择日志用户的Employee id,我只是在我的XML中添加了这个

代码语言:javascript
复制
<field name="employee_id" style = "width:500px" domain = "[('id', '=', user.id.employee_id.id)]" options="{'no_create': True}"/>

但我有个错误

未定义错误: NameError: name 'user‘未定义。

在Odoo 8中,是否有正确的方法获取日志用户的员工Id?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2016-02-03 09:11:05

为了获得记录用户的雇员,我这样做:

代码语言:javascript
复制
resource = self.env['resource.resource'].search([('user_id','=',self.env.user.id)])
employee = self.env['hr.employee'].search([('resource_id','=',resource.id)])

当然,将其放在域中并不容易,因此,也许可以使用存储的计算字段将雇员的user_id保存在表中,然后可以这样编写域:

代码语言:javascript
复制
[('user_id', '=', uid)]
票数 7
EN

Stack Overflow用户

发布于 2016-02-03 04:46:12

您可以尝试使用以下域:

替换您的代码

代码语言:javascript
复制
[('id', '=', user.id.employee_id.id)]

使用

代码语言:javascript
复制
[('employee_id.user_id','=',user.id)]

这将过滤员工的用户。基于记录的用户,它为员工的用户过滤。

票数 2
EN

Stack Overflow用户

发布于 2016-09-24 14:34:50

这可以用简单得多的方式来完成。试试这个.py文件

代码语言:javascript
复制
employee_id = fields.Many2one('hr.employee', string=u"Employé", readonly=True, store=True, default=_employee_get)

def _employee_get(self):
    record = self.env['hr.employee'].search([('user_id', '=', self.env.user.login)]) 
    return record[0]
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35167181

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档