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

如何将Odoo或OpenERP中不同模型的两个字段联系起来?

在Odoo或OpenERP中,可以使用关联字段(Many2one)来联系不同模型的两个字段。关联字段允许您在一个模型中创建一个与另一个模型相关联的字段。

要将两个字段联系起来,首先需要确保两个模型之间存在关系。假设我们有两个模型:Model A和Model B,我们想要在Model A中创建一个字段,该字段与Model B中的一个字段相关联。

以下是将Odoo或OpenERP中不同模型的两个字段联系起来的步骤:

  1. 定义模型A和模型B:在Odoo或OpenERP中,首先需要定义这两个模型。每个模型都应该有一个名称和字段。
  2. 在模型A中创建关联字段:在模型A中,使用关联字段(Many2one)来创建一个字段,该字段与模型B中的字段相关联。关联字段由fields.Many2one类型定义,并且需要指定与模型B的关联关系。
  3. 更新模型A的视图:在模型A的视图文件中,将新创建的关联字段添加到视图中以显示在用户界面中。可以使用<field>标签来添加关联字段,并将它放置在适当的位置。
  4. 保存并更新模型定义:保存并更新模型A和模型B的定义以使更改生效。可以通过重新启动Odoo或OpenERP服务器来完成这个步骤。

通过以上步骤,您已成功将Odoo或OpenERP中不同模型的两个字段联系起来。现在,模型A中的关联字段将显示与模型B相关联的记录,并允许用户选择相应的值。

以下是一些额外的信息:

  • 关联字段允许创建多对一(Many2one)关系。这意味着一个记录可以与另一个模型中的多个记录相关联,但一个记录只能与一个模型中的一条记录相关联。
  • 关联字段还允许使用ondelete参数指定在删除相关联记录时应采取的操作(如删除,设置为null等)。
  • 如果您想要在关联字段中显示与其他字段相关联的附加信息,您可以使用name_get方法自定义显示文本。

请注意,以上答案是基于Odoo或OpenERP的实现,如果您想要了解特定的腾讯云产品和解决方案,请在提问中明确提出,并提供相应的产品信息和要求。

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

相关·内容

​在tinycolinux上编译odoo8

本文关键字:在tinycolinux上源码安装odoo8,动态模式python+uswgi+nginx,精简安装odoo8模块 在前面《发布基于openerperpcmsone》时,我们谈到openerp...页面设计存储在模板里,而内容存储在数据库独立文件。 当一个用户请求页面时,各部分联合生成一个标准HTML(标准通用标记语言下一个应用)页面。...对于一个CMS,其后台admin系统就代表了它技术全部(负责内容模型表示和前端展示)。...内容来分别测试): --socket=:8000 --master --uid=tc --gid=root --wsgi-file /usr/local/nginx/html/odoo/openerp-wsgi.py.../openerp-server.conf,openerp-server.conf内容即类似下面修改得到配置文件): db_host = 127.0.0.1 db_port = 5432 db_user

1.4K40

ODOO优化层级关系查询效率方法

Odoo10 Development Essentials》Chapter5(p106)中介绍了Odoo中分层关系建立。 代码如下 在上面的代码。 使用字段来关联上层记录。...使用和字段来进行记录所属层级,当时看书时候对这些代码不是很理解,只是知道这样做能够提高层级关系数据模型查询数据记录效率。...(如递归查询文件夹文件) Odoo为了提高层次结构(树状结构)查询效率,每一条层级数据记录添加跟字段. 假设A是B上级对象。那么存在这样逻辑关系。...Odoo 应用 我们用Odoo11product模块作为演示 在文件.看到产品目录(ProductCategory类.15行起)代码 在Odoo11演示数据,产品目录结构一共有6个 我们查询下数据库数据...凡事皆有两面,这种存储特性会在数据库添加多余字段。其实是以空间换时间。

2.3K80
  • 企业信息化建设,花小钱导入开源ERP不香吗?

    笔者前段时间有关注某北方邻国一个客户SAP ERP实施项目。该客户实施SAP之前,有使用Odoo ERP系统。后来笔者惊奇发现,Odoo ERP系统其实是一个开源ERP系统。...需要提示是,本文部分内容来自互联网。Part I:国际主流十大开源ERP系统简述1. OpenERPOdoo)当提到开源ERP软件时,OpenERP是无可争议重量级冠军。...DolibarrDolibarr 是一个针对中小型企业、组织自由职业者开源ERP/CRM软件。它包括了企业资源计划(ERP)和客户关系管理(CRM)以及可应用于其它不同活动功能。...没有好项目实施团队支持,即使开源ERP软件设计再出色,它在企业实施效果也是有限。事实上,开源ERP软件实施顾问流动性也普遍比商业ERP软件实施公司流动性要高。...笔者还认为,使用开源ERP软件企业,为了节省成本而导入开源ERP软件系统无可厚非,但是也要做好面临在实施和使用过程痛不欲生心理准备。

    1K00

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

    这个属性作用就是让同一字段,可以根据不同公司,存储不同值,假设一个用户属于多个公司,他在不同公司职务也不一样,此时就可以设置该属性为True。 该值未存储在当前模型。...ORM阻止两个Many2many字段使用相同relation参数,除非: 两个字段都使用相同模型, comodel并显示指定relation参数,否则 至少有一个字段属于携带_auto = False...Many2many 或者 One2many 字段 related 可以用于引用另一个模型 One2many Many2many 字段,前提是通过当前模型一个Many2one关系来实现。...仅当修饰方法声明字段包含在createwrite调用时才会触发。...and extension) Odoo提供三种不同机制,以模块化方式扩展模型: 从现有模型创建新模型,向副本添加新信息,但保留原始模块 扩展其他模块定义模型,替换以前版本 将模型一些字段委派给它包含记录

    13.5K10

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

    模型和基本字段 在上一章末尾,我们创建一个odoo模块。然而,此时它仍然是一个空壳,不允许我们存储任何数据。...api, SUPERUSER_ID 练习 创建estate_property表最小化模型odoo14/custom/estate/models/estate_property.py 定义model...有两大类领域字段:‘简单’字段--直接存储在模型原子值,形如Boolean, Float, Char, Text, Date 和Selection, ‘关系型’ 字段--连接相同或者不同模型记录...required (bool, default: False) 如果为 True, 表示该字段值不能为空。创建记录时必须拥有默认值给定值。...自动创建字段(Automatic Fields) 参考: 该话题相关文档可参考 Automatic fields. odoo会在所有model(当然,也可以配置禁止自动创建某些字段)创建少数字段

    2.4K30

    在Ubuntu 16.04上安装Odoo 10

    介绍 Odoo(以前称为OpenERP)是一个开源业务应用程序套件,包括客户关系管理(CRM),销售渠道,项目管理,制造,发票,会计,电子商务和库存工具,仅举几例。...注意 如果您在同一个腾讯云CVM服务器上运行多个Odoo版本,则可能需要为每个实例使用不同用户和目录。...或者,我们可以包含一个新行,指定用于连接Odoo前端端口:xmlrpc_port = 8069。只有在计划在同一服务器上运行多个Odoo实例(版本)时才有意义。...根据您服务器资源,安全性问题和测试第二次安装范围可以与生产实例一起或在其他位置(远程本地)进行。出于本教程目的,我们将使用与生产环境在同一服务器上运行测试环境。...虽然提供这些是希望它们有用,但请注意,我们无法保证外部托管材料准确性及时性。 Odoo用户文档 Odoo开发人员文档 欢迎您使用腾讯云免费开发者专属在线实验平台进行试验。

    3.3K42

    odoo 权限管理学习总结

    res_partner表,那么在odoo如何区分用户类型以及如何做权限控制呢?...为了解决上述问题,odoo采用了用户组机制。将用户划分为不同组(一个用户可以归属多个用户组,一个用户组也可以拥有多个用户),然后给组分配权限,从而实现用户权限管控及用户类型识别。...如果当前用户不在列出,他将无权访问该字段: 将自动从请求视图中删除受限制字段 从fields_get()响应删除受限制字段 尝试(显式)读取写入受限字段会导致访问错误 修改estate...注意:通过为当前视图中目标字段添加groups属性实现权限控制仅作用于当前视图,如果希望当前视图模型(Model)所有视图中,对该字段实现统一权限控制话,需要在模型定义,为目标字段添加groups...\role.py 去除上述两个文件所有@api.multi修饰符,解决安装报错问题: AttributeError: module 'odoo.api' has no attribute 'multi

    10.2K20

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

    在上一章已经看到,odoo能够为给定模型生成默认视图。实际上,默认视图对于业务应用程序来说是不可接受。相反,我们至少应该以逻辑方式组织各个字段。 视图是在带有操作和菜单XML文件定义。...它们是ir.ui.view model实例。 在我们estate模块,我们需要以逻辑方式组织字段: 在列表(树)视图中,我们希望显示不仅仅是名称。 在表单视图中,应该对字段进行分组。...其最基础版本仅简单列出要在表显示所有字段(其中每个字段都是一列): <field name="...搜索视图与列表及表单视图略有<em>不同</em>,因为它们不显示内容。尽管它们适用于特定<em>模型</em>,但它们用于过滤其他视图<em>的</em>内容(通常是聚合视图,比如列表). 除了在使用方面的<em>不同</em>,他们<em>的</em>定义方式是一样<em>的</em>。...在<em>odoo</em><em>中</em>,domain对记录上<em>的</em>条件进行编码:domain是用于选择<em>模型</em>记录子集<em>的</em>条件列表。每个条件都是一个包含<em>字段</em>名、运算符和值<em>的</em>三元组。

    3.3K40

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

    计算字段和变更(Computed Fields And Onchanges) 模型之间关系是任何Odoo模块关键组成部分。它们对于任何业务案例建模都是必要。...然而,我们可能需要给定模型字段之间链接。有时,一个字段值是根据其他字段值确定,有时我们希望帮助用户输入数据。...本章目标 在房地产模型,自动计算总面积和最佳报价 预期效果: 在地产报价模型,自动计算合法日期且可被更新 在我们房地产模块,我们定义了生活区和花园区。...在这种情况下,不会从数据库检索字段值,而是通过调用模型方法来动态计算字段值。 要创建计算字段,请创建字段并将其属性compute设置为方法名称。...要计算字段越复杂(例如,具有大量依赖项当计算字段依赖于其他计算字段时),计算所需时间就越长。请务必事先花一些时间评估计算字段成本。

    3.2K30

    odoo Actions学习总结

    所有Action都有两个强制属性: type 当前Action类别,决定可以使用哪些字段以及如何解释action name action名称,在客户端界面显示对action简短用户可读描述...Bindings(绑定) 除了两个强制属性外,所有action有用于在任意模型上下文菜单显示动作可选属性: binding_model_id 指定action绑定模型,格式:moduleName.modelName...包含字段: res_model action触发要显示视图关联模型 views (view_id,view_type)对列表。...默认获取模型默认搜索视图。 target (可选) 视图是否应在主内容区域(current)、以全屏模式(fullscreen)对话框/弹出窗口(new)打开。...highlight=do_action#the-action-manager 在数据库window action,操作有几个不同字段,这些字段应被客户端忽略,主要用于组成view列表 view_mode

    2.6K30

    odoo 开发入门教程系列-继承(Inheritance)

    为此,我们需要向res.users模型添加一个字段,并调整其视图以显示它。 Odoo提供了两种继承机制来以模块化方式扩展现有模型。...第一继承机制允许模块通过以下方式修改在另一个模块定义模型行为: 向模型添加字段 覆盖模型字段定义 给模型添加约束 给模型添加方法 重写模型现有方法 第二种继承机制...(委托)允许将模型每个记录链接到父模型记录,并提供对该父记录字段透明访问。...odoo,第一种机制最常用。在我们例子,我们希望向现有模型添加一个字段,这意味着我们将使用第一种机制。..." new_field = fields.Char(string="New Field") 这里可以找到将两个字段添加到模型示例 class AccountMoveLine(models.Model

    2.2K20

    odoo 为form表单视图添加chatter功能

    实践环境 Odoo 14.0-20221212 (Community Edition) 需求描述 如图,给表单新增一个类似聊天窗口,当记录一些表单活动(本例为自动记录当前记录状态变化) 需求实现 模型定义...odoo14\custom\estate\models\estate_property.py 需要继承mail.thread模型,并为需要追踪字段设置tracking属性,并设置属性值为真值 #!...,该模型类型为models.AbstractModel,其定义文件为 odoo14\odoo\addons\mail\models\mail_thread.py,其字段命名均以message_开头...tracking 该属性为True数字时,打开针对该属性所属字段修改日志--当所属字段内容发生变化时,系统会将该字段变化前后值写入日志,这个数字大小影响变更日志在日志排序。...,类型为models.AbstractModel,定义在文件 odoo14\odoo\addons\mail\models\mail_activity.py,其字段命名均以activity_,对应模型定义

    78020

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

    为此,我们需要在estate_account模块为创建一个模型,继承estate.property模型。...模块正确目录创建 estate_property.py 文件 _inherit estate.property 模块 重写 action_sold 方法(你可能已经将该方法命名为不同名称了) 以返回...不幸是,没有一种简单方法可以知道如何在Odoo创建任何给定对象。大多数时候,有必要查看其模型,以找到所需字段并提供适当值。 学习一个好方法是看看其他模块是如何完成你想做事情。...为此在account.move创建中包含invoice_line_ids字段,这是一个One2many字段。One2many和Many2many使用通用ORM方法描述特殊“commands”。...创建account.move时添加两个发票行。

    1.7K10

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

    模型之间关系(Relations Between Models) 上一章介绍了为包含基本字段模型创建自定义视图。然而,在任何真实业务场景,我们都需要不止一个模型。此外,模型之间链接是必要。...参考: 本主题相关文档可查阅 Many2one 在我们房地产模块,我们想定义房地产类型概念,例如,房屋公寓。...买家可以是任何个人,然而,销售人员必须是房产机构员工(即odoo用户)。 在odoo,有两种我们经常引用两种模型: res.partner: 一个partner为一个物理实体或者法人实体。...例如,我们通过partner_id字段,在测试模型上定义了到res.partner模型链接。...首先,我们不需要所有模型操作菜单。某些模型只能通过另一个模型访问。在我们练习中就是这样:报价总是通过房产获得。 其次,尽管property_id字段是必需,但我们没有将其包含在视图中。

    4.5K40

    Odoo 基础教程系列」第三篇——从 Todo 应用开始(2)

    在这篇教程里我们将会了解到 Odoo 模型一些其他类型字段和特殊机制,而我依然会继续带领大家一起完善我们 Todo 应用,不断地往里面添加一些新功能特性,让它看起来更丰满也更实用一些。...选择字段 在上一篇教程,我们已经创建好了待办事项模型,但是只是添加了「描述」和「已完成?」两个字段,这肯定是不能满足我们需求。...在上一篇教程我们提到过,在对模型进行改动之后,需要对模块进行升级才能看到变更后样子,除了从应用列表中找到模块进行升级外,我们还可以在命令行Odoo 启动命令加上参数 -u todo 指定升级...很多时候我们会需要用不同颜色对待办事项进行标记,例如我们会希望已经过期任务以红色标记来提醒我们,这个任务过期了。...然后我们再看到 标签多了一个属性 decoration-danger,这个属性可以接受表达式字段名作为值,当结果为真时,这个属性就会生效,将 TreeView 满足表达式行以红色标记

    1.4K10

    Odoo开发指北 01 初识Odoo

    开发自己模块时,需要在模块所在目录下,创建两个文件:init.py和__manifest__.py,在其中定义模块初始化操作以及模块描述。...然后使用自己模块:把自己模块路径设置到odoo,重启odoo让其搜索到自定义模块,即可通过odoo进行安装。...类,定义出模型类会自动与Odoo提供ORM接口匹配,也就是说这些模型类会自动存入sql。...security:对模块访问权限控制,在ir.model.access.csv文件定义。还可以新建一个record_rule.xml,在其中进行更细化权限控制。...脚手架 odoo-bin scaffold 命令新建了我们 aaa 应用 …/odoo-bin scaffold aaa 模块开发流程 分析模块模型,得出模型所需字段有哪些,然后定义模型类——

    2.4K30

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

    这是因为,在odoo中加载CSV文件比加载XML文件更快。 odoo,用户接口(action,菜单和视图)大部分是通过创建和组装XML文件记录来定义。...view_mode 可获取视图。本例为列表(树)和表格视图。 odoo到处都可以找到例子,但是这个 简单action好例子。关注XML 数据文件结构,因为你在后续练习中会用到。 <?...Odoo有许多微调方式,但通常第一步是确保: 某些字段有默认值 某些字段只读 当记录重复时,某些字段不能被拷贝 在我们房产业务案例,我们希望:: 售价只读(往后将自动填充) 当记录重复时,可用日期和售价不能被拷贝...我们看到一些属性,如required=True,会影响数据库表模式。其他属性也将影响视图提供默认值。 练习 -- 添加一些属性到字段。...当需要相关行为时,需要在模型定义这些保留字段。 练习 -- 添加active字段 添加一个 active 字段到estate.property 模型

    3K30

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

    向导只是一个继承TransientModel而非model模型。...wizard可以通过关系字段(many2onemany2many)引用常规记录wizard记录,但常规记录不能通过many2one字段引用wizard记录 详细代码 注意:为了更清楚表达本文主题...,供web端使用,用于区分不同页面操作数据,'estate.property.offer_3'为供web端使用记录ID,'data'键值代表记录数据,其id键值代表记录在数据库主键id,context...以上参数同下文saveSelectionsToSessionStorage 参数可同时共存 如果需要将action绑定到指定模型指定视图Action,可以在ir.actions.act_window定义添加...> 说明: saveSelectionsToSessionStorage 为"true"则表示点击复选框时,将当前选取记录存到浏览器sessionStorage,可选 odoo14\custom\estate

    5.3K60
    领券