当前位置: 首页 > news >正文

如何在 Odoo18 视图中添加关联数据看板按钮 | 免费开源ERP实施诀窍

文 / 开源智造 · Odoo亚太金牌服务

引言

关联数据看板按钮乃是 Odoo 当中的一项强效功能,它容许用户顺遂地访问相关记录,或者直接从模型的表单视图施行特定操作。它们为用户给予了对重要信息的疾速访问途径,并简化了工作流程,由此强化了用户体验。在此篇文中,我们将渐次探究如何在 Odoo 18 中添加关联数据看板按钮。

Odoo的关联数据看板按钮概述

关联数据看板按钮乃是与本数据源产生关联数据且带有记录数显示的导航按钮,通常呈现为可点击的图标抑或按钮,安设于表单视图的标题之处。其能够展示相关记录的计数,诸如链接至客户的发票数量或者分配给项目的任务数量。一经点击,它们便会将用户引领至相应的记录,进而让相关数据的管理更为轻松便捷。

在表单视图中添加关联数据看板按钮

如需新增关联数据看板按钮,需要继承表单视图并将该按钮放在名为 'button_box' <div> 结构之内,示例代码如下:

<record id="view_partner_form" model="ir.ui.view"><field name="name">res.partner.form.inherit.my.blog</field><field name="model">res.partner</field><field name="inherit_id" ref="base.view_partner_form"/><field name="arch" type="xml"><div name="button_box" position="inside"><button class="oe_stat_button" type="object" icon="fa-taxi"                         name="action_get_vehicles_record"></button></div></field></record>

借由在 res.partner 类中涵盖此记录以及函数 action_get_vehicles_record,您将会于合作伙伴表单里构建出一个带有出租车图标的全新关联数据看板按钮。

如何为关联数据看板按钮定义名称和关联数据

接下来,我们可以指定关联数据看板按钮的名称,并展现关联记录的计数。为达成此目的,请运用附加字段和计算函数来拓展 res.partner 模型,示例代码如下:

from odoo import models, fields
class ResPartner(models.Model):_inherit = "res.partner"vehicle_count = fields.Integer(string="Vehicles", compute='compute_vehicle_count', default=0)def compute_vehicle_count(self):for record in self:record.vehicle_count = self.env['fleet.vehicle'].search_count([('driver_id', '=', self.id)])

此设置允许关联数据看板按钮显示链接到合作伙伴的车辆数量。现在,更新您的 XML 记录以将 vehicle_count 包含在按钮定义中,示例代码如下:

<div name="button_box" position="inside"><button class="oe_stat_button" type="object" icon="fa-taxi"name="action_get_vehicles_record"><field string="Vehicles" name="vehicle_count" widget="statinfo"/></button>
</div>

接下来,凭借对 action_get_vehicles_record 函数的修改来明确关联数据看板按钮的操作。该函数将会对视图进行筛选,以展示与合作伙伴存在关联的车辆数据记录。示例代码如下:

def action_get_vehicles_record(self):self.ensure_one()return {'type': 'ir.actions.act_window','name': 'Vehicles','view_mode': 'tree','res_model': 'fleet.vehicle','domain': [('driver_id', '=', self.id)],'context': "{'create': False}"}

在车队模块中把部分车辆驾驶员与当下的合作伙伴相互关联之后,单击关联数据看板按钮便会展示出相关的车辆记录。

总结

依据本文的实施与开发技法,您能够顺遂地将关联数据看板按钮融入至 Odoo 18 应用进程之中,进而强化用户交互,推动更便捷的数据管理。关联数据看板按钮为相关记录提供了快速访问的途径,与此同时,维持着您的ERP UI简洁与高效。

http://www.lryc.cn/news/500981.html

相关文章:

  • Linux下mysql环境的搭建
  • 视觉语言模型 Qwen2-VL
  • 浅谈新能源汽车感应钥匙一键启动的步骤和特点
  • 鸿蒙ArkTS语言基础语法详解
  • H5游戏出海如何获得更多增长机会?
  • Cmake+基础命令
  • python数据分析之爬虫基础:requests详解
  • PHP期末复习(通过30道填空题梳理知识点)
  • PostgreSQL 安装部署系列:使用YUM 方式在Centos 7.9 安装指定 PostgreSQL -15版本数据库
  • 知识图谱8:深度学习各种小模型
  • 为什么 JavaScript 中的 `new` 运算符报错?
  • Tomcat,javaweb, servlet , springBoot
  • 使用Kimi开发自己的问答应用
  • TypeScript进阶
  • jenkins邮件的配置详解
  • 小皮面板(PHPSTUDY)配置多个域名或IP
  • 【大语言模型】LangChain LCEL 表达式语言
  • Leetcode 3382. Maximum Area Rectangle With Point Constraints II
  • MitelMiCollab 身份绕过导致任意文件读取漏洞复现(CVE-2024-41713)
  • DVWA 靶场 SQL 注入报错 Illegal mix of collations for operation ‘UNION‘ 的解决方案
  • 京准电钟分享:医院网络内NTP时间同步服务器作用是什么?
  • HTML DOM API
  • java时间处理SimpleDateFormat详解
  • redis-stack redisSearch环境安装搭建
  • go返回多个errors
  • Monkey结合appium模拟操作特定界面
  • Ubuntu22.04深度学习环境安装【cuda+cudnn】
  • go语言的sdk项目搭建与git 操作标签tag并推送至远程仓库
  • 从零用java实现 小红书 springboot vue uniapp (1)
  • Python爬虫——HTML中Xpath定位