如何在 Odoo 16 中将按钮添加到所有表单视图的操作按钮

在 Odoo 中,操作按钮是关键组件,允许用户触发与特定表单视图相关的特定操作或工作流。这些按钮策略性地放置在用户界面中,可简化操作并提高用户效率。它们可以自定义以执行各种任务,例如创建记录、更新信息或启动特定流程。

操作按钮的重要性在于它们能够为用户提供简洁直接的与系统交互的方式。这些按钮充当隐藏在菜单或导航选项中的功能的网关。随着 Odoo 的发展,定制化以满足特定业务需求的需求也在增长。在Odoo 16中,一个强大的功能允许用户在所有表单视图中添加按钮到操作按钮中,从而提供全新级别的灵活性和控制力。

在 Odoo 16 中将按钮集成到所有表单视图的操作按钮的过程相对简单。首先,我们需要按以下格式创建文件夹,

并包含如下所示的清单。

 

在“web.assets_backend”中添加以下格式的 js 文件(form_controller.js)

然后,我们需要在js文件中添加下面的代码。

 

要将“创建销售订单”按钮添加到表单视图操作按钮(单击该按钮时会触发向导),我们按以下方式编辑 FormController。此处,menuItemsActions 存储了向操作按钮添加值的默认函数。然后,向其添加自定义按钮。在描述中,我们添加文本以显示名称,并在回调函数中添加 doAction 以打开创建销售订单的向导。

语境:

上述 js 代码涉及向表单视图操作按钮添加“创建销售订单”按钮,用于触发显示销售订单表单的向导。

编辑 FormController:

该过程从修改 FormController 开始。这可能是软件代码库的一部分,负责管理表单视图的行为。该段落表明 FormController 中有一个名为 menuItemsActions 的变量,它存储了为操作按钮添加值的默认函数。

默认功能和自定义按钮:

menuItemsActions 变量似乎保存了表单操作按钮的默认操作。下一步是向这组操作中添加自定义按钮。

按钮描述:

描述添加文本以提供有关按钮的标签。 

回调函数-doAction:

本段提到了一个回调函数,其中包含一个 doAction 方法。回调函数通常在响应特定事件时执行,在本例中,即单击按钮时。doAction 方法负责打开向导,以便创建销售订单。这一步至关重要,因为它启动了与用户交互的过程,以收集创建销售订单所需的信息。以下是操作按钮中的按钮。

销售订单向导如下,

总之,所述过程涉及自定义 Odoo 中的 FormController,以在表单视图中包含一个新按钮。此按钮标记为“创建销售订单”,单击时会通过回调函数触发向导。向导将指导用户完成创建销售订单的步骤。这种类型的定制在软件开发中很常见,当根据特定业务需求定制用户界面和功能时。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/764425.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

万界星空科技服装行业MES系统解决方案

据调查,我国大多数服装厂目前存在两大问题: 第一,是生产设备先进,但管理模式落后,仍采用手工管理模式,未实现信息化; 第二,仍有大量的人工站,短时间内难以用设备代替&a…

如何查看xpf文件

xpf文件是什么 XPF文件是“XML Paper Specification File”的缩写,它是一种文件保存格式,具有以下特点和相关信息: 一、定义与用途 定义:XPF文件用于保留文档的固定布局,包括文本、图片以及其他文档元素的确切位置。…

软件工程实验

实验环境和需求 用户可以对相片进行按类别管理,用户可以设定不同的类别,然后上传照片到相应的类别中,并能进行照片的删除,注释 运行 运行并访问 localhost 8090,图片在数据库中的信息是D:/upgrade 后面的内容 se…

Emacs之解决:java-mode占用C-c C-c问题(一百四十六)

简介: CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长! 优质专栏:Audio工程师进阶系列【原创干货持续更新中……】🚀 优质专栏:多媒…

一招解决 | IP地址访问怎么实现https

没有域名的情况下,使用IP地址实现HTTPS访问是可以的,但相比使用域名会有些许限制,需要通过部署专用于IP地址的SSL/TLS证书来实现。 IP地址实现HTTPS访问的过程与使用域名类似,但有几个关键的区别。以下是使用IP地址实现HTTPS访问…

day62--若依框架(基础应用篇)

若依搭建 若依版本 官方 若依官方针对不同开发需求提供了多个版本的框架,每个版本都有其独特的特点和适用场景: 前后端混合版本:RuoYi结合了SpringBoot和Bootstrap的前端开发框架,适合快速构建传统的Web应用程序,其…

java周测总结(3)

1、什么是I0流? 是一串流动的字符,从先进先出的方式要求信息的通道。 2、什么是序列化?什么是反序列化? 序例化是将对象的状态存储到特定的存储介质中的过程反序例化是将特定的有合者公质中数据重新构建对象的过程。 3、Java中线程在哪个包下…

第57期|GPTSecurity周报

GPTSecurity是一个涵盖了前沿学术研究和实践经验分享的社区,集成了生成预训练Transformer(GPT)、人工智能生成内容(AIGC)以及大语言模型(LLM)等安全领域应用的知识。在这里,您可以找…

海思NNIE部署yolov5-shufflenet

1.简要说明 由于NNIE上transpose支持的顺序是固定的,shufflenet那种x=torch.transpose(x,1,2).contiguous() 的操作一般是不支持的。需要进行调整。 2.使用工程以及修改 使用的是开源工程:GitHub - Lufei-github/shufflev2-yolov5: shufflev2-yolov5:lighter, faster and ea…

vue根据文字长短展示跑马灯效果

介绍 为大家介绍一个我编写的vue组件 auto-marquee ,他可以根据要展示文本是否超出展示区域,来判断是否使用跑马灯效果,效果图如下所示 假设要展示区域的宽度为500px,当要展示文本的长度小于500px时,只会展示文本&…

maven 根据不同环境,走不同的实现(多种环境组合)

​ 原因: 线上程序同时支持人大金仓和mysql,且支持根据环境动态选择 java JCE 的实现方式前期已完成 springboot 从mysql 迁移人大金仓 -kingbase :https://blog.csdn.net/qq_26408545/article/details/137777602?spm1001.2014.3001.5502 …

[leetcode] n个骰子的点数

. - 力扣&#xff08;LeetCode&#xff09; class Solution { public:vector<double> statisticsProbability(int num) {vector<double> dp(6, 1.0 / 6.0);for (int i 2; i < num; i) {vector<double> tmp(5 * i 1, 0);for (int j 0; j < dp.size()…

昇思25天学习打卡营第9天|linchenfengxue

K近邻算法实现红酒聚类 使用MindSpore在部分wine数据集上进行KNN实验 了解KNN的基本概念&#xff1b;了解如何使用MindSpore进行KNN实验。 2、K近邻算法原理介绍 K近邻算法&#xff08;K-Nearest-Neighbor, KNN&#xff09;是一种用于分类和回归的非参数统计方法&#xff0c;…

独立开发者系列(15)——git的使用

上一篇14文章触发了敏感话题&#xff0c;直接未过审核&#xff0c;看来技术博客也有敏感点。 大部分情况下&#xff0c;独立项目是你一个人开发&#xff0c;但是当你接的项目比较大的时候&#xff0c;你需要其他人的帮忙&#xff0c;这个时候你要把代码分享给别人。因为如果你…

23种设计模式之装饰者模式

深入理解装饰者模式 一、装饰者模式简介1.1 定义1.2 模式类型1.3 主要作用1.4 优点1.5 缺点 二、模式动机三、模式结构四、 装饰者模式的实现4.1 组件接口4.2 具体组件4.3 装饰者抽象类4.4 具体装饰者4.5 使用装饰者模式4.6 输出结果&#xff1a; 五、 应用场景5.1 图形用户界面…

vxe-table合并行数据

vxe-table合并行数据 <vxe-tableborderresizableheight"500":scroll-y"{enabled: false}":span-method"mergeRowMethod":data"tableData3"><vxe-column type"seq" width"60" /><vxe-column field&…

【WEB前端2024】3D智体编程:乔布斯3D纪念馆-第52课-语音控制机器人

【WEB前端2024】3D智体编程&#xff1a;乔布斯3D纪念馆-第52课-语音控制机器人 使用dtns.network德塔世界&#xff08;开源的智体世界引擎&#xff09;&#xff0c;策划和设计《乔布斯超大型的开源3D纪念馆》的系列教程。dtns.network是一款主要由JavaScript编写的智体世界引擎…

springboot拦截器,ThreadLocal(每个线程的公共区域)

拦截器 配置信息&#xff08;拦截所有请求&#xff09; 其实这种可以作为springAOP作日志记录