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> ...
随机推荐
- [leetcode] 134. Gas Station (medium)
原题 题意: 过一个循环的加油站,每个加油站可以加一定数量的油,走到下一个加油站需要消耗一定数量的油,判断能否走一圈. 思路: 一开始思路就是遍历一圈,最直接的思路. class Solution { ...
- 推荐:经典SQL语句大全
一.基础 .说明:备份sql server--- 创建 备份数据的 device USE master EXEC sp_addumpdevice 'disk', 'testBack', 'c:/mss ...
- springboot - 登录+静态资源访问+国际化
1.项目目录结构 2.pom.xml <?xml version="1.0" encoding="UTF-8"?> <project xmln ...
- 第三章 基础算法和数据结构高频题 I
区间类问题 1 Missing Interval public List<String> findMissingRanges(int[] nums, int lower, int uppe ...
- [开源] .NETCore websocket 即时通讯组件---ImCore
前言 ImCore 是一款 .NETCore 下利用 WebSocket 实现的简易.高性能.集群即时通讯组件,支持点对点通讯.群聊通讯.上线下线事件消息等众多实用性功能. 开源地址:https:// ...
- 【MySQL】Illegal mix of collations (utf8mb4_general_ci,IMPLICIT) and ...
线上遇到这个问题,详细信息如下: SQL state [HY000]; error code [1267]; Illegal mix of collations (utf8mb4_general_ci ...
- Python中的inf与nan
Python中可以用如下方式表示正负无穷 >>> float('inf') # 正无穷,inf不区分大小写,float('InF')一样可以. inf >>> fl ...
- PID算法通俗理解,平衡车,倒立摆,适合不理解PID算法的人来看!
先插句广告,本人QQ522414928,不熟悉PID算法的可以一起交流学习,随时在线(PID资料再我的另一篇博客里) 倒立摆资料连接↓ https://www.cnblogs.com/LiuXinyu ...
- java的properties文件从数据库添加到文件
package com.xian.jdbc; import java.io.BufferedInputStream; import java.io.FileInputStream; import ja ...
- 疯子的算法总结(三) STL Ⅱ迭代器(iterator) + 容器
一.迭代器(Iterator) 背景:指针可以用来遍历存储空间连续的数据结构,但是对于存储空间费连续的,就需要寻找一个行为类似指针的类,来对非数组的数据结构进行遍历. 定义:迭代器是一种检查容器内元素 ...