首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如果odoo中的many2one字段中有重复的值,如何仅显示1个值

在odoo中,如果many2one字段中存在重复的值,可以通过设置_rec_name属性来仅显示一个值。

_rec_name属性用于指定模型中作为记录名称的字段。默认情况下,many2one字段会显示关联模型的名称字段。但是,如果存在重复的值,可以通过在关联模型中设置_rec_name属性来指定其他字段作为记录名称。

以下是解决方法的步骤:

  1. 找到包含many2one字段的模型,假设为ModelA
  2. 在关联模型中,找到用于显示记录名称的字段,假设为name字段。
  3. 在关联模型的Python类中,添加_rec_name属性并设置为name字段的名称。

示例代码如下所示:

代码语言:txt
复制
class ModelA(models.Model):
    _name = 'model.a'
    _rec_name = 'name'

    name = fields.Char(string='Name')
    many2one_field = fields.Many2one('model.b', string='Many2one Field')

在上述示例中,ModelA模型中的many2one_field字段将只显示关联模型model.b中的唯一值,而不会显示重复的值。

请注意,以上答案是基于odoo框架的解决方案,具体实现可能因版本和定制需求而有所不同。关于odoo的更多信息和腾讯云相关产品,请参考腾讯云官方文档:odoo

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

odoo ORM API学习总结兼orm学习教程

copy (bool) – 当记录重复时,该字段是否被拷贝(在使用 ORM copy()方法复制并生成新记录时,不复制该字段)。...如果访问了这些字段任何一个字段,且并且其不在缓存,ORM将简单为这些字段返回默认False。...要遍历字段完整序列由related属性指定 如果未重新定义某些字段属性,则会自动从源字段复制这些属性:string、help、required(当序列所有字段都是必需时)、groups、digits...否则,它将作为默认显示在对话框 警告 @onchange 支持简单字段名称,不支持并自动忽略点分名称(关系字段字段,比如partner_id.tz) 危险 由于 @onchange 返回伪记录记录集...实践发现,针对One2many字段如果ids对应记录Many2one字段没存储当前模型主键ID时,无法使用该命令。

13.3K10

odoo 开发入门教程系列-模型之间关系(Relations Between Models)

在我们estate模块,我们需要有关房产以下信息: 购买房产客户 出售房产真实重述代理人 房产类型:房子、公寓、顶层公寓、城堡… 显示了该酒店特色一系列标签:舒适、翻新… 收到报价清单 Many2one...参考: 本主题相关文档可查阅 Many2one 在我们房地产模块,我们想定义房地产类型概念,例如,房屋或公寓。...然而,在本例,我们希望显示给定地产报价列表,因此我们将使用one2many概念。 one2many是many2one反向实现。...comodel,必须在comodel定义Many2one 字段 练习 添加房地产报价表 创建 estate.property.offer 模型,并添加以下字段: Field Type Attributes...odoo如何知道我们报价与哪个房产相关?这就是使用odoo框架一部分魔力:有时候事情是隐式定义

4.4K40

odoo 开发入门教程系列-模型和基本字段

最重要属性为 _name,该属性定义了model在odoo系统属性。...有两大类领域字段:‘简单’字段--直接存储在模型表原子,形如Boolean, Float, Char, Text, Date 和Selection, ‘关系型’ 字段--连接相同或者不同模型记录...有些属性是所有字段都拥有的,最常见几个属性如下: string (str, default: 字段名称) UI上显示字段label (用户可见)....required (bool, default: False) 如果为 True, 表示该字段不能为空。创建记录时必须拥有默认或给定。...自动创建字段(Automatic Fields) 参考: 该话题相关文档可参考 Automatic fields. odoo会在所有model(当然,也可以配置禁止自动创建某些字段)创建少数字段

2.3K30

如何处理数据库表字段特殊字符?

现网业务运行过程,可能会遇到数据库表字段包含特殊字符场景,此场景虽然不常见,但只要一出现,其影响却往往是致命,且排查难度较高,非常有必要了解一下。...表字段特殊字符可以分为两类:可见字符、不可见字符。...可见字符处理 业务原始数据一般是文本文件,因此,数据插入数据库表时需要按照分隔符进行分割,字段包含约定分隔符、文本识别符都属于特殊字符。...有人就说了,我接手别人数据库,不清楚是不是存在这个问题,这个咋办呢?没关系,一条update语句就可以拯救你。...,对于不可见字符例如:换行符LF、回车键CR,又该如何处理呢?

4.5K20

如何使用Excel将某几列有标题显示到新列

如果我们有好几列有内容,而我们希望在新列中将有内容标题显示出来,那么我们怎么做呢? Excel - TEXTJOIN function 1....- - - - 4 - - - 在开始,我们曾经使用INDEX + MATCH方式,但是没有成功,一直是N/A https://superuser.com/questions/1300246/if-cell-contains-value-then-column-header...所以我们后来改为TEXTJOIN函数,他可以显示,也可以显示标题,还可以多个列有时候同时显示。...Year 8 - - - 4 - - - 15 Year 5 - - - - 5 - - - =TEXTJOIN(", ",TRUE,IF(ISNUMBER(B2:I2),$B$1:$I$1,"")) 如果是想要显示...,则: =TEXTJOIN(", ",TRUE,IF(ISNUMBER(B2:I2),B2:I2,"")) 其中,ISNUMBER(B2:I2)是判断是不是数字,可以根据情况改成是不是空白ISBLANK

11.3K40

odoo wizard界面显示带复选框列表及勾选数据获取

(为了让大家看得更清楚,保留关键文件) odoo14 ├─custom │ ├─estate │ │ │ __init__.py │ │ │ __manifest__...wizard可以通过关系字段many2one或many2many)引用常规记录或wizard记录,但常规记录不能通过many2one字段引用wizard记录 详细代码 注意:为了更清楚表达本文主题...以上参数同下文saveSelectionsToSessionStorage 参数可同时共存 如果需要将action绑定到指定模型指定视图Action,可以在ir.actions.act_window定义添加...ID web.ListRenderer来覆盖框架自带web.ListRenderer定义,这种实现方案只能在非Debug模式下正常工作,且会导致无法开启Debug模式,odoo.define实现中会对服务是否重复定义做判断...,如果重复定义则会抛出JavaScript异常。

5.2K60

问与答95:如何根据当前单元格高亮显示相应单元格?

excelperfect Q:这个问题很奇怪,需要根据在工作表Sheet1输入数值高亮显示工作表Sheet2相应单元格。...具体如下: 在一个工作簿中有两个工作表Sheet1和Sheet2,要求在工作表Sheet1列A某单元格输入一个后,在工作表Sheet2从列B开始相应单元格会基于这个高亮显示相应单元格。...例如,在工作表Sheet1单元格A2输入2后,工作表Sheet2从单元格B2开始两列单元格将高亮显示,即单元格B2和C2高亮显示;在工作表Sheet1单元格A3输入3,工作表Sheet2...从B3开始三列单元格将高亮显示,即单元格B3、C3和D3加亮显示,等等。...图1:在工作表Sheet1输入数值 ? 图2:在工作表Sheet2结果 A:可以使用工作表模块事件来实现。

3.8K20

odoo 开发入门教程系列-计算字段和变更(Computed Fields And Onchanges)

然而,我们可能需要给定模型字段之间链接。有时,一个字段是根据其他字段确定,有时我们希望帮助用户输入数据。...自然地我们将总面积定义这两者总和,我们将为此使用计算字段概念,即给定字段将从其他字段中计算出来。 到目前为止,字段已直接存储在数据库并直接从数据库检索。字段也可以被计算。...在这种情况下,不会从数据库检索字段,而是通过调用模型方法来动态计算字段。 要创建计算字段,请创建字段并将其属性compute设置为方法名称。...依赖(Dependencies) 计算字段通常取决于计算记录其他字段。ORM期望开发人员使用修饰符depends()指定计算方法上依赖项。...提示: create_date 仅在记录创建时被填充,因此需要一个回退,防止创建时奔溃 在表单和列表视图中添加字段,正如本章目标显示第二个动画中一样。

3.1K30

Elasticsearch如何聚合查询多个统计如何嵌套聚合?并相互引用,统计索引某一个字段率?语法是怎么样

本文将详细解释一个聚合查询示例,该查询用于统计满足特定条件文档数量,并计算其占总文档数量百分比。这里回会分享如何统计某个字段率,然后扩展介绍ES一些基础知识。...,而是执行聚合分析。...Bucket Aggregations(桶聚合):将文档分组到不同。每个桶都可以包含一个或多个文档。例如,terms 聚合将文档根据特定字段进行分组。...max:查找数值字段最大。extended_stats:获取数值字段多个统计数据(平均值、最大、最小、总和、方差等)。value_count:计算字段非空数量。...并相互引用,统计索引某一个字段率?语法是怎么样

10020

odoo 开发入门教程系列-一些用户界面

动作可以通过三种方式触发 : 点击菜单项目(链接接到指定动作) 点击视图按钮(如果与action关联) 对象上下文action 本章涵盖第一种情况。...然而,菜单总是遵循一种体系结构,实际上有三个层次菜单: 根菜单,显示在App切换器Odoo社区版切换器是一个下拉菜单) 第一级菜单,显示在顶部栏 动作菜单 最容易方式是在XML文件定义结构来创建菜单...Odoo有许多微调方式,但通常第一步是确保: 某些字段有默认 某些字段只读 当记录重复时,某些字段不能被拷贝 在我们房产业务案例,我们希望:: 售价只读(往后将自动填充) 当记录重复时,可用日期和售价不能被拷贝...字段定义,添加 default=X, 其中X 可以是Python文本(boolean, integer, float, string) ,也可以是一个以model对象自身为入参并返回一个函数:...字段默认为‘Unknown’,而last_seen 字段默认为当前时间 练习 -- 设置默认 添加适当默认: 卧室数量默认为 2 可用日期默认为3个月内 修改 odoo14\custom\

2.8K30

odoo 权限管理学习总结

res_partner表,那么在odoo如何区分用户类型以及如何做权限控制呢?...如果文件部分数据需要应用一次,则可以将文件这部分放在,如下: <!...可以利用该特性实现隐藏对象需求,比如针对一些常规下不需要显示特殊字段,为其设置属性groups = "base.group_no_one",可以实现在非Debug模式下隐藏字段在视图中显示。...如果当前用户不在列出,他将无权访问该字段: 将自动从请求视图中删除受限制字段 从fields_get()响应删除受限制字段 尝试(显式)读取或写入受限字段会导致访问错误 修改estate...注意:通过为当前视图中目标字段添加groups属性实现权限控制作用于当前视图,如果希望当前视图模型(Model)所有视图中,对该字段实现统一权限控制话,需要在模型定义,为目标字段添加groups

10K20

ODOO配置文件etcodoo.conf配置详解

这是--db filter目的之一:它指定如何根据所请求主机名(域)选择数据库。该是一个正则表达式,可能包括动态注入主机名(%h)或访问系统所通过第一个子域(%d)。 ...下面例子以显示名称以“mycompany”开头数据库 [options]   dbfilter = ^mycompany.*$   显示与www之后第一个子域匹配数据库:例如,如果传入请求被发送到...** **如果希望Odoo和PostgreSQL在同一台计算机上执行,UNIX套接字是可以,并且在没有提供主机时是默认,但是如果希望Odoo和PostgreSQL在不同计算机上执行,则需要侦听网络接口...**基本参数 Odoo通过端口5432通过UNIX套接字连接到本地postgres。...这样做时,您需要将更多http头转发给Odoo,并在Odoo配置激活代理模式,让Odoo读取这些头。

6.6K21

如何在MySQL获取表某个字段为最大和倒数第二条整条数据?

在MySQL,我们经常需要操作数据库数据。有时我们需要获取表倒数第二个记录。这个需求看似简单,但是如果不知道正确SQL查询语句,可能会浪费很多时间。...在本篇文章,我们将探讨如何使用MySQL查询获取表倒数第二个记录。 一、查询倒数第二个记录 MySQL中有多种方式来查询倒数第二个记录,下面我们将介绍三种使用最广泛方法。...ID(或者其他唯一)。...二、下面为大家提供一个测试案例 我们来看一个例子,假设我们有一个名为users表,其中包含以下字段: CREATE TABLE users ( id INT(11) NOT NULL AUTO_INCREMENT...------+-----+ | id | name | age | +----+------+-----+ | 4 | Lily | 24 | +----+------+-----+ 三、查询某个字段为最大整条数据

59910

odoo 开发入门教程系列-基本视图

它们是ir.ui.view model实例。 在我们estate模块,我们需要以逻辑方式组织字段: 在列表(树)视图中,我们希望显示不仅仅是名称。 在表单视图中,应该对字段进行分组。...其最基础版本简单列出要在表显示所有字段(其中每个字段都是一列): 重启服务,浏览器验证,效果如下: 说明:如果未给添加string属性,则显示如下: Form(表单) 参考: 主题关联文档可以查看Form....在odoo,domain对记录上条件进行编码:domain是用于选择模型记录子集条件列表。每个条件都是一个包含字段名、运算符和三元组。...如果指定字段满足作用于运算符条件,则记录满足条件。

3.2K40

odoo Actions学习总结

所有Action都有两个强制属性: type 当前Action类别,决定可以使用哪些字段以及如何解释action name action名称,在客户端界面显示对action简短用户可读描述...包含字段: res_model action触发显示视图关联模型 views (view_id,view_type)对列表。...在web客户端默认为80 name(可选),action名称,界面显示时拼接到当前面包屑导航(现有导航面包屑 / name)。...默认为“Unnamed”,注意:如果name为空字符串,则默认为 Unnamed 例如,要使用列表和表单视图打开客户(设置了customer标志partner): { "type": "ir.actions.act_window...highlight=do_action#the-action-manager 在数据库window action,操作有几个不同字段,这些字段应被客户端忽略,主要用于组成view列表 view_mode

2.6K30

odoo 开发入门教程系列-模块交互

现在,重写操作,返回super调用,拿个例子来说可能更清楚: from odoo import models class InheritedModel(models.Model): _inherit...如果没有,请检查是否正确导入了所有Python文件。 如果重写生效,我们可以继续创建发票。不幸是,没有一种简单方法可以知道如何Odoo创建任何给定对象。...大多数时候,有必要查看其模型,以找到所需字段并提供适当。 学习一个好方法是看看其他模块是如何完成你想做事情。例如,销售一个基本流程是从销售订单创建发票。...create 方法不接受结果集作为字段。...为此在account.move创建中包含invoice_line_ids字段,这是一个One2many字段。One2many和Many2many使用通用ORM方法描述特殊“commands”。

1.6K10

odoo 给列表视图添加按钮实现数据文件导入

attachments: file_name_suffix = attachment.name.split('.')[-1] # 针对文本文件,暂时不实现数据存储,演示如何处理文本文件...,可以再次选择相同文件,如果不添加以下这行代码,不刷新当前页面的情况下,无法重复导入相同文件 self.$('.o_estate_customer_upload .o_input_file...,想复用上述js,需要替换js以下内容: 修改estate.upload.customer.mixin为其它自定义全局唯一 替换o_estate_customer_upload为在对应按钮视图模板定义对应...class属性 替换estate.CustomerHiddenUploadForm为在对应按钮视图模板定义隐藏表单模版名称 替换EstateCustomerListView.buttons为对应按钮视图模板定义按钮模版名称...,上下文节点命名属性将被设置为属性元素如果已经存在则替换,如果不存在则添加) 注意:参考官方文档,t-extend这种继承方式为旧继承方式,已废弃,笔者实践了最新继承方式,如下 <?

3.4K30

Odoo 菜单定义和修改学习总结

> 说明: id 菜单外部ID name 如果不指定name,则: 如果为菜单设置了action,则获取action record定义name字段作为菜单name属性 如果未设置菜单action...如果外部ID以-为前缀,则从菜单组移除该ID代表组,注意,如果指定用户组不是在当前模块定义,需要指定所在模块名称,形如estate.group_estate_property_root_menu...> 说明: parent 指定父级菜单外部ID,如果上级菜单不在当前模块,则需要指定上级菜单所在模块,形如parent="moduleName.parent_menu_id" 修改菜单 本节要介绍是一种特殊修改方式..." name="omsPurchase"/> 以新定义菜单为父级菜单,添加子菜单(如果需要的话),添加方式可以参考上文所述,需要注意是,不管采用哪种方式,原有菜单子菜单依然存在,并显示为新定义菜单子菜单...隐藏原有菜单子菜单(如果需要的话) 定义一个,将其id设置为要隐藏子菜单所在模块名称及id属性组合,形如:moduleName.source_menu_id,如果菜单和原有菜单在同一个模块

1.3K10

扫码

添加站长 进交流群

领取专属 10元无门槛券

手把手带您无忧上云

扫码加入开发者社群

相关资讯

热门标签

活动推荐

    运营活动

    活动名称
    广告关闭
    领券