修改Many2One字段的链接打开方式

odoo14 关联字段many2one many2many按条件筛选显示记录 简介:我们在使用关联字段时有时候需要对关联的记录进行筛选显示或者更改关联字段的显示值,我这里整理了三种方法方便大家参考。 场景1:针对不同的群体,many2one字段显示出来可供选择的记录不同 场景2:不想用odoo默认的many2one字段显示值,想自定义显示值 静态筛选是使用字段自带的domain参数进行筛选,这种方式是程序一运行就会执行,没办法根据实际的参数设置筛选条件,所以只能实现固定筛选。............... 阅读详情
OE 6中, Many2One字段的只读显示方式如下:


点击时, 是在本窗口打开这个对象的. 有时候非常的恼人. 很多用户不知道浏览器的前进后退, 所以还要从头找回去.

想想, 不如改为浮动窗口的好点.

打开浏览器的开发工具:


链接都是"oe_form_uri" class. 在web模块的xml模版里, 发现这个class是 FieldURI.readonly 在使用.
转而在web模块所带的一大堆js文件里搜索 "FieldURI". 发现一大堆的界面对象在使用这个模版.
忽然想到, 应该有一个派生类, 名字类似于 many2one, 结果找到 view_page.js, line 171里.
应该是打开一个新的浮动窗口, target不能是current.
修改之
line 171:


            var real_set_value = function(rval) {
                self.value = rval;
                self.$element.find('a')
                     .unbind('click')
                     .text(rval ? rval[1] : '')
                     .click(function () {
                        self.do_action({
                            type: 'ir.actions.act_window',
                            res_model: self.field.relation,
                            res_id: self.value[0],
                            context: self.build_context(),
                            views: [[false, 'page'], [false, 'form']],
                            target: 'new'
                        });
                        return false;
                     });

打完收工.
还没有验证是否影响到其他功能.

微博 @杨振宇_  欢迎交流.
【明道云】如何让用户可以新增但不能修改记录 在设计表单时直接将字段设置只读是不行的。字段设置只读将会直接让界面上此字段的前端组件不可编辑。 阅读详情

相关推荐

Java实现双色球&大乐透随机选号算法——原理详解与代码实战

掌握核心语法:集合操作、随机数生成、排序。贴近实际场景:将编程知识应用于生活问题的解决。

wangchl0932的博客 4987

Many2one(多对一)关联场景中,如何从模型(多)关联到模型(一)的某个字段

首先,我们定义。

阿狸的博客 634

ptrade量化策略之沪深300指数增强

本策略的核心是在沪深300股票池中选股,选择的股票都是市值比较大,业绩比较好的白马股,根据市场相对位置以及基本面因子来选择股票

qq_29301281的博客 1191

odoo弹出选择弹窗,在列表视图选择记录操作

odoo可以通过弹窗弹窗列表视图,选择指定模型的记录进行操作 常见的场景比如many2many或者one2many字段,需要一次选择多条记录的时候,可以通过自定义的按钮,在js中弹出弹窗,显示列表中的记录进行操作 弹窗示例如下: var dialogs = require('web.view_dialogs'); new dialogs.SelectCreateDialog(self, { res_model: '弹窗对应的模型

鹿哥 1343

Ubuntu桌面消失?可能是lightdm配置在捣鬼:详细解析/etc/lightdm.conf的优先级机制与实战修复

本文详细解析了Ubuntu系统因lightdm显示管理器配置错误导致桌面消失的问题。通过分析/etc/lightdm.conf的优先级加载机制,提供了从systemctl诊断、调试模式运行到实战修复配置语法错误(如缺失[Seat:*]组)的完整方案。文章还探讨了在系统无法启动时使用chroot或恢复模式进行高级救援,并对比了lightdm与gdm3在NVIDIA驱动环境下的不同表现,帮助用户高效恢复图形界面。

weixin_29313547的博客 420

PR控制以及使用PR控制用于单相离/并网逆变器

最近想学习一下并网逆变器,需要用到PR控制,全网找遍了许多学习资料,终于掌握的差不多了,在此做个记录,以及个人对PR(Proportional Resonant)控制的理解。在去年7月准备电赛的时候偶然看到有几篇讲解数字滤波器,第一次接触传递函数离散化,深刻被数字时代的数字方式折服,改改代码,就可以实现不同的截至频率,甚至不同阶数,而模拟方式还要改元器件。当时就感觉这玩意太他妈牛逼了,很想学懂它,奈何学不会呀。后面全身心做电赛,就忘了这事儿。直至最近学习PR控制,当初的感觉又回来了,一股劲儿吃下来了。

xht2403267701的博客 3万+

odoo one2many many2many 字段设置默认值

我们经常会遇到这样的需求,在创建的时候 给 明细行(one2many)设置默认值。 我们先来看看操作这两个字段的方法 many2many (0,0,{values}) 根据values里面的信息新建一个记录。 (1,ID,{values})更新id=ID的记录(写入values里面的数据) (2,ID) 删除id=ID的数据(调用unlink方法,删除数据以及整个主从数据链接关系) (3,...

Gaivn GU 7813

推荐系统(十六):基于ESMM的商品召回/推荐系统

ESMM(Entire Space Multi-Task Model)是阿里巴巴提出的多任务学习框架,通过联合建模点击率(CTR)和点击转化率(CVR)解决传统CVR模型样本稀疏问题。其核心思想是将 CVR 定义为 CTR 与 CTCVR 的条件概率,模型包含两个子任务。

Jin_Kwok的博客 1266

[odoo]去除Many2one字段的“创建并编辑”选项,防止用户误操作而重复创建记录

要去除Many2one字段的“创建并编辑”选项,只要在view.xml里对应的field定义里增加options="{'no_create_edit':1}即可

Bourne-Again 4545

黑猫带你学UFS协议第8篇:UFS电气特性详解(Power、CLK、Reset等)

UFS强制支持secure mode。UFS设备可能会存储个人或者公司的信息,UFS提供把数据永久从设备上移除的功能,并且保证对存储介质进行逆向恢复数据也恢复不回来原有数据。安全模式是以逻辑单元为单位进行应用的,不同的逻辑单元可以有不同的安全模式。由于UFS设备的存储介质不同,所以把数据安全从存储介质上移除方式会有不同,spec提供了三种通用的移除方法,UFS设备至少支持其中一种。● 对存储的位置进行一次擦除操作。● 对存储的位置使用单一字符(比如0xAA)覆盖写,然后进行擦除。.........

黑猫奥利奥的博客 4076

Unreal5从入门到精通之一文搞懂Unreal的C++代码编译之谜

我们在开发Unreal项目时,如果时蓝图模板的项目,一般问题不大,因为当你修改完蓝图,点击编译Compile+保存Save,就可以继续开发了。这对于开发者来说也非常友好。但是,如果你使用的C++模板开发项目,代码编译一切都变得魔幻起来,IDE(VS/Rider)里面有编译,编辑器里面也有编译,有什么区别呢?我们来列举几个新手常碰到的问题。1.代码我明明新建了,编辑器里怎么看不到?2.昨天我新家的功能运行的好好的,今天怎么感觉还是老逻辑。或者昨天加的新代码,新蓝图不见了。

TxNet 1606

Odoo中去掉Many2one字段的 “创建并编辑”选项

我们开发中可能遇到要去掉“创建并编辑”的选项,下面说下怎么去除该选项: 我们只需要在Many2one 字段上增加 options="{'no_create_edit': True}" ,然后升级一下模块即可。 效果如图: ...

zhangsandege123的博客 1813

Stable Diffusion 模型分享:Indigo Furry mix(人类与野兽的混合)

Indigo Furry mix 是一个混合模型,出的图具有雄性人类的体型和野兽的形态。条目内容类型大模型基础模型SD 1.5来源CIVITAI作者indigowing文件名称文件大小1.99GB。

水滴的博客 1831

odoo One2many Many2many字段操作

many2many (0,0,{values}) 根据values里面的信息新建一个记录。 (1,ID,{values})更新id=ID的记录(写入values里面的数据) (2,ID) 删除id=ID的数据(调用unlink方法,删除数据以及整个主从数据链接关系) (3,ID) 切断主从数据的链接关系但是不删除这个数据 (4,ID) 为id=ID的数据添加主从链接关系。 (5) 删除所有的从数据...

MALA的博客 1356

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

Mybatis many2one,one2Many和many2many增删改操作

一、many2one(保存时,关系交给many方来进行处理) 1.实体类(实体类属性满足驼峰匹配的话,如userName,resultMap中添加autoMapping='true',则里面只需要写id映射,其余的挥动匹配映射) public class Department { private Long id; private String name; } public...

m0_38068812的博客 783

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

odoo中one2many的那些事[乐乐独记]

odoo中one2many的那些事一、创建数据1、直接创建2、先创建后赋值二、更新数据三、删除数据 一、创建数据 1、直接创建 直接在字段后面去添加创建 values1 = { 'name': 'zhangsan', 'company_id': 6, } values2 = { 'name': 'zhaoliu', 'company_id': 5, } self.cu...

qq_41931364的博客 1899

26.odoo入门——工作杂记之many2one

26———————— 上午—————— 问题1: 刚发现,在odoo里面的数据表映射关系中,不论是many2one , 还是 many2many, 它们的对应字段拿到的就是一条记录,而不是一个id!!(虽然之前说过它们是通过id对应的) 例如: 对于这个字段: product_id = fields.Many2one('wens.investment.financin

I feel lost 5029

odoo中many2one字段的神奇用法。

states={‘draft’: [(‘readonly’, False)], ‘confirmed’: [(‘readonly’, True)]}:该属性指定了该字段的状态,它是一个字典,键为状态名称,值为该状态下该字段的其他属性。在状态为’draft’时,该字段是可编辑的,而在状态为’confirmed’时,该字段是只读的。precompute=True:该属性告诉Odoo,在查询数据时预先计算该字段的值,以便在后续的查询中加快速度。”:该属性提供了该字段的帮助信息,用于解释该字段的作用和用途。

jie6666的博客 1692

odoo 员工试用期考核表 给one2many字段加载默认值

description = '试用期考核表'employee_id = fields.Many2one('hr.employee', string='员工', required=True)department_id = fields.Char(string='部门' , related='employee_id.department_id.name', readonly=True)

qq_45260977的博客 954

保持只读模式打开form视图中的one2many字段为可编辑状态

问题描述:在odoo中如何保持只读模式打开form视图中的one2many字段为可编辑状态 解决方式:在one2many字段中使用widget修改原有的one2many字段处理的js <field name="trip_record" widget="one2many_keep_edit"> 在static文件中加入one2many_keep_edit.js文件,内容为: odoo.define('one2many_keep_edit', function (require) { "u

鹿哥 377

Odoo中,对于Many2one 字段搜索更多长度调整。

今天在开发过程中,遇到一个需求。就是针对Many2one 字段,在下拉选择时,搜索更多按钮添加,是数据超过7个以后,会默认添加搜索更多按钮。 如何实现,将长度7个出现的搜索更多,设置为,长度大于3个,就显示搜索更多。 解决办法: 1、在web模块下,static/src/js/fields/relational_fields.js 2、修改inti 初始化方法中,this.limit = 7; 这里。 修改后,全部的Many2one 字段,数据超过3个后,会默认添加搜索更多出来。而不是7个

王帅的博客 853

odoo 隐藏Many2many 的 “新建” 和One2many 的 “保存并新建” 按钮隐藏

对于Many2many 打开新form视图 隐藏“新建” 按钮, 隐藏后的效果 <field name="production_line_ids" options="{'no_create': True}"/> # options="{'no_create': True}" 添加 options="{‘no_create’: True}" 后即可隐藏掉 对于One2many 打开新form视图 隐藏“保存并新建” 按钮, 隐藏后的效果 .modal-footer .btn-.

隔壁小红馆 875

odoo中one2Many字段的使用以及注意事项

odoo基础

2201_75422198的博客 627

odoo8使用onchange改变one2many类型的值

因实际业务需求,在主表的栏位变更时,需要重新刷新明细的数据。 使用odoo new api方式来处理此操作时,开始发现明细数据总是无法写入,经过查询相关资料,最后实现成功,现记录如下: class Order(models.Model): name="mymodule.order" line = fields.One2many('mymodule.line',

vnsoft的专栏 5150

【SSH商城】--- Hibernate 的many-to-one;one-to-many;many-to-many

虽然我已经敲过SSH了,可是感觉还是心里面空空的,这不,前两天就有几个同学问我给他们挑错,结果就没有调出来,丢脸啊,所以就捡着零碎时间,好好的总结一下把,就当是给以后面试做准备了!      开始咱们的主题: 1、many-to-one:      描述多对一的一种数据模型,它指定many一方是不能独立存在的。通过many- to - one 的标签,我们可以定义一种多对一的联系

My Devil's Cry 1371

odoo的one2many字段的form视图底部按钮自定义

odoo的one2many底部自带了一套按钮:'保存并关闭','保存并新建','取消','移除' 但是如果有时候不想要自带的按钮怎么办呢? 首先想到的肯定是footer标签覆盖原来的footer标签,但是你会发现此时会出现两个可能的问题: 1.自定义的按钮渲染成功,但是点击按钮会连带把父级的form表单一起关闭 2.按钮渲染上去,但是点击不起作用 解决办法: 1.仍然是先添加footer标签覆盖原来的footer标签,不同的是,现在不直接写button,而是用widg...

鹿哥 876

Odoo Many2one字段“搜索更多“显示数量修改

当下拉列表中的选项数量超过此处设置的值时,自动显示"Search More…2. 调整企业版搜索结果数量限制。

iuv_li的博客 366
上一篇: 更改Editable Form里的快捷键
下一篇: 自制Openerp图表
d_yang
博客等级 码龄18年 33粉丝 91原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值