You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Odoo中设置员工应用默认搜索当前用户员工ID

解决方法

直接在XML动作的context字段里用Odoo内置的表达式语法取值即可,把代码里的#替换为user.employee_id.id:

<record id="hr.open_view_employee_list_my" model="ir.actions.act_window">
    <field name="name">Search Filter</field>
    <field name="context">{"search_default_employee_id": user.employee_id.id}</field>
</record>

为什么之前的尝试无效

context.get(employee_id)是Python代码的写法,但Odoo在XML定义动作时,context字段支持的是Odoo表达式语言,并非直接执行Python代码。这里的user是Odoo内置的上下文变量,直接指向当前登录的用户对象,通过user.employee_id.id就能获取其关联的员工记录ID。

注意事项

要确保当前登录用户已经在系统中关联了对应的员工记录(即用户的employee_id字段不为空),否则这个默认过滤器不会生效,不会报错但也不会过滤任何结果。

内容的提问来源于stack exchange,提问作者Vatana7

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.01 21:25:52