odoo添加顶部按钮实现自定义方法
一、效果图
自定义添加顶部按钮,实现自定义方法。
二、实现过程
1、需要用到三个文件,tree_view_button.js、tree_view_odoo.xml、base.xml三个文件,文件目录如下。
2、tree_view_button.js代码如下:
- <?xml version="1.0" encoding="UTF-8"?>
- <template id="template_01" xml:space="preserve">
- <!-- 拓展Tree视图增加自定义按钮 -->
- <t t-extend="ListView.buttons">
- <t t-jquery="div.o_list_buttons" t-operation="append">
- <t t-if="widget.model == 'res.users'">
- <button class="btn btn-primary btn-sm o_list_tender_button_create" type="button">数据同步</button>
- </t>
- </t>
- </t>
- <!--<!– 拓展Form视图增加自定义按钮 –>-->
- <!--<t t-extend="FormView.buttons">-->
- <!--<t t-jquery="button.o_form_button_create" t-operation="after">-->
- <!--<button type="button" class="btn btn-primary o_list_tender_button_say_hello" style="display:inline-block;">Form:Say Hello</button>-->
- <!--</t>-->
- <!--</t>-->
- </template>
3、tree_view_button.js代码:
- odoo.define('coordination_center.tree_view_button', function (require) {
- "use strict";
- var core = require('web.core');
- var ListView = require('web.ListView');
- var QWeb = core.qweb;
- var Model = require('web.Model');
- ListView.include({
- render_buttons: function ($node) {
- var self = this;
- this._super($node);
- //自定义按钮click事件绑定处理方法
- this.$buttons.find('.o_list_tender_button_create').click(this.proxy('tree_view_action'));
- },
- /**
- * 实现自定义按钮的事件
- */
- tree_view_action: function () {
- console.log('点击事件!!!!');
- var compose_model = new Model('tb.odoo');
- compose_model.call('tb_odoo_tong');
- console.log('点击事件结束!!!!');
- }
- });
- });
tb.odoo是我model名称,tb_odoo_tong是我的方法名称。
4、base.xml,引入自定义的js。
- <?xml version="1.0" encoding="utf-8"?>
- <odoo>
- <template id="assets_backend" name="tree view menu" inherit_id="web.assets_backend">
- <xpath expr="." position="inside">
- <script type="text/javascript" src="/coordination_center/static/src/js/tree_view_button.js"></script>
- </xpath>
- </template>
- </odoo>
5、最后记得在__manifest__.py文件中引入xml文件。
tree_view_odoo.xml文件需要用qweb映入。
- 'qweb':[
- 'static/src/xml/tree_view_odoo.xml'
- ]
odoo添加顶部按钮实现自定义方法的更多相关文章
- Angular回到顶部按钮指令
之前的分页代码指令化在线下测试没有问题,到服务器上就不运行了,所以那个先放一放. 今天来把"回到顶部"按钮指令化.首先是页面html: <!--回弹按钮--> < ...
- iOS 为键盘添加隐藏按钮
// 为键盘添加隐藏按钮 UIToolbar * backView = [[UIToolbar alloc]initWithFrame:CGRectMake(, , , )]; [backView s ...
- 【Android】ListView监听上下滑动(判断是否显示返回顶部按钮
设置滚动监听判断ListView的滚动方向同时获取屏幕高度.ListView实际高度,判断是否需要展示返回顶部按钮 package com.zihao.activity; import java. ...
- 如何给magento的产品页面添加返回按钮
如何给magento的产品页面添加返回按钮,最模板提供教程 第一步: 打开 E:\xampp\htdocs\magento\skin\frontend\default\bluescale\css\st ...
- iOS之自定义UITabBar替换系统默认的(添加“+”号按钮)
自定义UITabBar替换系统默认的,目的是为了在UITabBar中间位置添加一个“+号按钮”,下面我们来聊聊具体的实现. 1.自定义WBTabBar,让其继承自UITabBar,代码如下: // / ...
- Visual Studio 2008中添加运行按钮 转载
在Visual Studio 2008中添加运行按钮 默认情况下,VS2008中的工具栏上没有运行按钮,只有调试(Debug)按钮,可按照以下方法添加 1.点击菜单Tools(工具)->Cust ...
- EasyUI 1.3.6 DateBox添加清空按钮
EasyUI 1.3.6 DateBox添加清空按钮 效果如图: EasyUI datebox是没有清空按钮的,可通过如下方法加入: 打开jquery.easyui.min.js看到这样如此乱的代码, ...
- UWP 返回顶部按钮
返回顶部的按钮,like this 当用户下滑了一定的距离之后,通常是快滑倒底部的时候,出现返回顶部按钮,当用户向上快滑,滑到顶部的时候,返回顶部按钮自动消失. 在UWP中,用来滚动内容的控件是Scr ...
- 简单地做一下“回到顶部”按钮,用jQuery实现其隐藏和显示
1.首先,我们要准备HTML代码: <div id="return-top"> <a href="#top">返回顶部</a> ...
随机推荐
- Hive之函数与自定义函数
系统自带的函数 1)查看系统自带的函数 hive> show functions; 2)显示自带的函数的用法 hive> desc function upper; 3)详细显示自带的函数的 ...
- 跟着大彬读源码 - Redis 6 - 对象和数据类型(下)
继续撸我们的对象和数据类型. 上节我们一起认识了字符串和列表,接下来还有哈希.集合和有序集合. 1 哈希对象 哈希对象的可选编码分别是:ziplist 和 hashtable. 1.1 ziplist ...
- 加深对C#数据类型的认识
值类型: 值类型源于System.Value家族,每个值类型的对象都有一个独立的内存区域用于保存自己的值,值类型 所在的内存区域称之为栈(Stack),只要在代码中修改它,就会在内存区域保存这个值. ...
- Spring的依赖注入和管理Bean
采用Spring管理Bean和依赖注入 1.实例化spring容器 和 从容器获取Bean对象 实例化Spring容器常用的两种方式: 方法一: 在类路径下寻找配置文件来实例化容器 [推荐使用] Ap ...
- 1.Go语言copy函数、sort排序、双向链表、list操作和双向循环链表
1.1.copy函数 通过copy函数可以把一个切片内容复制到另一个切片中 (1)把长切片拷贝到短切片中 package main import "fmt" func main() ...
- web渗透---第一天
了解黑客 黑客: 黑客是一个中文词语,皆源自英文hacker,随着灰鸽子的出现, 灰鸽子成为了很多假借黑客名义控制他人电脑的黑客技术,于是 出现了“骇客”与黑客”分家. 黑客:Hacker 骇 ...
- Golang高效实践之array、slice、map
前言 Golang的slice类型为连续同类型数据提供了一个方便并且高效的实现方式.slice的实现是基于array,slice和map一样是类似于指针语义,传递slice和map并不涉及底层数据结构 ...
- 【游记】NOIP2018初赛
声明 本文最初的版本创建之时,本人甚至只是个电脑的小白,因而不太会用电脑编辑文字,最初的版本写在一个Word文档里,被随意的丢弃在我杂乱无比的网盘的某一个角落,直到我决定整理自己的成长历程,将散落的游 ...
- unity 四叉树管理场景
当场景元素过多时,需要实时的显示及隐藏物体使得性能提示,但是物体那么多,怎么知道哪些物体需要显示,哪些物体不需要显示的.当然,遍历物体判断该物体是否可以显示是最容易想到的方法,但是每次更新要遍历所有物 ...
- 基于opencv,开发摄像头播放程序
前言 Windows下实现摄像视频捕捉有多种实现方式:各种方式的优劣,本文不做对比.但是,opencv是一款老牌开发库,在图像处理领域声名显赫.采用opencv来处理摄像视频,在性能和稳定性上,是有保 ...