odoo开发笔记 -- odoo10 视图界面根据字段状态,动态隐藏创建&编辑按钮
场景描述:
解决方式:
网络搜索,vnsoft_form_hide_edit 找到了这个odoo8的模块,
odoo10语法和视图界面有新的变化,所以需要修改一些地方,感兴趣的小伙伴可以对比下两个代码的不同。
odoo10:
注意:该js代码是全局生效的。
odoo.define('vnsoft_form_hide_edit', function (require) {
"use strict";
var FormView = require('web.FormView');
FormView.include({do_push_state: function (state) {
// alert("hahahahahaha");
try {
var self = this;
this._super.apply(this, arguments);
var no_edit = this.options.action.context.form_no_edit
// console.log("%o",no_edit);
if(no_edit!=undefined){
var result = this.compute_domain(no_edit);
// console.log("%o",result);
if(result==true){
this.$buttons.find(".o_form_buttons_view").hide();
this.$buttons.find(".o_dropdown_toggler_btn").hide()
}else{
if(this.get("actual_mode")=="view") {
this.$buttons.find(".o_form_buttons_view").show()
}
}
}
} catch (e) {
{ /* empty */ }
}
}
}
);
});
关键部分:视图里边添加限制条件,来根据定义的条件,动态显示编辑按钮--显示or隐藏
<record id="your_test_action" model="ir.actions.act_window">
<field name="name">测试视图</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">teset.test_dec</field>
<field name="view_mode">tree,form</field>
<field name="context">{ 'form_no_edit':['|',('state','in',['submitted','approved']),
('city', 'in', ['beijing','shanghai'])],}
</field>
<field name="view_id" ref="customs_declaration_tree"/>
</record>
当form视图的相关字段: 字段(state状态)的值在“提交”或者“批准”时,
或者 字段(city城市)的值在“北京”或者”上海“的条件下,当前界面左上角的”编辑“按钮就会隐藏。
odoo开发笔记 -- odoo10 视图界面根据字段状态,动态隐藏创建&编辑按钮的更多相关文章
- odoo开发笔记 -- tree视图按指定字段group_by分组显示
注意点: view视图文件中的搜索视图要放在action视图的前边. 在action视图中,要写search_view_id, 还有context, search_default_group_by_字 ...
- odoo开发笔记 -- 搜索视图继承扩展
odoo开发笔记 -- 搜索视图继承扩展
- odoo开发笔记 -- 用户配置界面如何增加模块访问权限
在odoo设置界面,点击用户,进入用户配置界面,会看到: 访问权 | 个人资料菜单 在访问权 page菜单界面,可以看到系统预制的一些模块都会显示在这里, 那么,我们自己开发的模块如何显示在这块呢,从 ...
- odoo开发笔记--from视图隐藏顶部&tree视图保留
场景描述: 开发过程中,有时候我们需要去除odoo自带的一些样式, 比如,form视图,要集成自定义的界面时,就希望把顶部的服务动作 和 分页按钮 隐藏掉. 处理方式: 分两种情况: 1. 保留顶部区 ...
- odoo开发笔记--form视图自定义
form视图自定义的两种场景: 1. 自己重写form视图样式文件 2. form视图,嵌入第三方的系统.
- odoo开发笔记--form视图按钮样例
如图: 对应后台views视图,class可选内容值: class="oe_highlight" class="btn-xs" class="btn- ...
- odoo开发笔记 -- div标签代替odoo button写法
odoo开发笔记 -- div标签代替odoo button写法 并调用自定义js <footer> <div id="confirm_request_cloud_repo ...
- odoo开发笔记 -- 后台日志输出及分析
odoo开发笔记 -- 后台日志输出及分析 附:日志分析软件
- odoo开发笔记 -- 模型一对多tree视图弹窗效果实现
实现效果参考: 1. 开发者模式 -- 设置 -- 工作流 -- 编辑 -- 添加项目 2. 会计模块 -- 管理 -- 付款条款 -- 编辑/创建 实现方式,很简单.只要视图界面写个一对多关联字段就 ...
随机推荐
- ac自动机板子
hdu2222 #include<bits/stdc++.h> #define ll long long #define M 500005 using namespace std; int ...
- 菜品识别 API调用
#get_access_token.py #获取access_token 1 import requests def GetToken(API_KEY,SECRET_KEY): url = 'http ...
- TCP/IP协议(5):传输层之TCP
一.TCP报文 上图为TCP报文的格式,可以看到TCP头部占20个字节,其中红色圆圈中每一项占一位,表示TCP报文的类型,置1表示该项有效. SYN表示建立连接. FIN表示关闭连接. A ...
- ip route 解释
[root@localhost ~]# ip route default via 172.16.0.1 dev ens192 proto static metric 100 172.16.0.0/16 ...
- IntelliJ IDEA 2017版 spring-boot 2.03后 Pageable用法;Pageable用法,PageRequest过时,新用法;Pageable过时问题;
1.旧版本Pageable用法: 但是会显示,这个版本已经过时,这时可以查看源码. 一般,一个方法过时,就会在其附近形成一个新的同名的但是其他用法的方法.按照这个理念,来找这个源码.很幸运,蒙对了,我 ...
- Attr类型
Attr表示元素的特性,在所有浏览器中,都可以访问Attr类型的构造函数和原型. attr特性存在于元素的attributes属性中的节点 nodeType 2 nodeName 特性的名称 node ...
- oracle如何快速导入导出文本格式数据
导出工具:sqluldr2工具说明:sqluldr2再以安装oracle客户端的环境下下无需再安装其它软件,只需将对应的软件包拷贝至对应目录,即可运行导出数据导出示例:--linux环境导出示例:/d ...
- Jersey RESTful WebService框架学习(六)接收MultivaluedMap类型参数
现在的web开发中有些工程会觉得实体bean的架构会比较重,现在的持久层的框架的特点也层出不穷,核心思想的ORM在此基础上,提供了很多便捷操作,mybatis,jfinal(内部持久层框架)之类的也诞 ...
- python基础之列表list元组tuple
作者:tongqingliu 转载请注明出处:http://www.cnblogs.com/liutongqing/p/7041763.html python基础之列表list元组tuple 列表li ...
- Job Interview: Why Only 3 Questions Really Matter
Even for the most fearless amongst us, job interviews can be nerve wracking. In order to give us the ...