odoo中如何在tree视图上实现M2M字段的跳转

本文介绍了如何在Odoo的tree视图中处理many2many字段的点击事件,通过修改源码在addons/web/static/src/js/fields/relational_fields.js文件中添加自定义事件,实现点击后调用get_formview_action方法,以新窗口展示单据详情。
摘要由CSDN通过智能技术生成
*  在odoo 自带的多对一类型是可以原生支持跳转的,但是最近遇到一个场景,我们需要在OA里面实现用户的考勤信息获取,考勤需要关联用户的请假/补卡/外出申请,一天的考勤信息可能关联用户的多个申请单,比如用户可能上午外出申请,下午有事请假,那么用户这一天的考勤,既会关联用户的外出申请,又会关联用户的请假申请,但是我们如果想实现直接在页面上点击many2many类型的字段(这里指用户关联的请假/补卡申请等)实现链接到对应的请假信息,那么怎么实现呢?

在搜索网络实现无果之后,我们开始着手自己修改源码实现。
第一步:着手了解odoo对于many2many等类型字段控制在哪个文件里面,通过定位之后,发现文件位于odoo的源码——addons/web/static/src/js/fields/relational_fields.js里面,通过定位发现,many2many字段的定义在下面这一行的代码里面。

var FieldMany2ManyTags = AbstractField.extend({
   
    description: _lt("Tags"),
    tag_template: "FieldMany2ManyTag",
    className: "o_field_many2manytags",
    supportedFieldTypes: ['many2many'],
    custom_events: _.extend({
   }, AbstractField.prototype.custom_e
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值