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. 会计模块 -- 管理 -- 付款条款 -- 编辑/创建 实现方式,很简单.只要视图界面写个一对多关联字段就 ...
随机推荐
- Codeforces Round #541 (Div. 2) D 并查集 + 拓扑排序
https://codeforces.com/contest/1131/problem/D 题意 给你一个n*m二维偏序表,代表x[i]和y[j]的大小关系,根据表构造大小分别为n,m的x[],y[] ...
- 如何在MYSQL下所有指定数据库名下执行SQL
mysql下用户库比较多,都有统一的命名格式,希望在这些所有用户库执行脚本,更新数据,或者查询数据 可以采用以下存储过程实现 DROP PROCEDURE IF EXISTS `sp_execalld ...
- linux 各项分布(个人记录)
1.根目录文件 root:存放root用户的相关文件home:存放普通用户的相关文件bin :存放常用命令的目录sbin:要具有一定权限才可以使用的命令mnt :挂在光驱和软盘的目录boot:存放引导 ...
- POJ1065--Wooden Sticks(动态规划)
There is a pile of n wooden sticks. The length and weight of each stick are known in advance. The st ...
- java基础-day8
第08天 常用API 今日内容介绍 u API概述 u Scanner类与String类 u StringBuilder类 第1章 API概述 1.1 API概念 API(Applica ...
- 界面及Activity参数设置
去标题栏(在onCreate中) requestWindowFeature(Window.FEATURE_NO_TITLE); 设置全屏(在onCreate中) getWindow().setFlag ...
- Miller_raibin算法随机化检测素数 & Pollar_rho 算法分解大数
这几天一直再学习这些内容,也没有发一些博客,现在我觉得差不多了 首先基础是Miller_raibin随机化检测素数,顾名思义,随机化也就是有几率不对,但是很低,适用于大数快速检测,因为大数已经超出了我 ...
- AngularJS 指令生命周期 complie link
AnguarJS指令从解析到生效一共会经历Inject.Compile.Controller加载.Pre-link.Post-link这几个主要阶段. 一.AngularJS指令执行过程 1.加载An ...
- poj 2046&&poj1961KMP 前缀数组
Power Strings Time Limit: 3000 MS Memory Limit: 65536 KB 64-bit integer IO format: %I64d , %I64u Jav ...
- 图解FTP服务器搭建(Windows Server 2008)
http://wenku.baidu.com/link?url=aUMoUYvSXKbHdbOHt4lUUCq0BhjnPRTM8jNb80jjwJ4_CM5LFq3lSm6f1ZlPNbFo6HEj ...