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

Odoo -我们如何显示多级记录?

Odoo是一款开源的企业资源规划(ERP)软件,它提供了一套完整的管理解决方案,包括销售、采购、库存、财务、人力资源等多个模块。在Odoo中,我们可以使用树视图(Tree View)来显示多级记录。

树视图是一种以层次结构显示数据的方式,它可以展示多级关联的记录。在Odoo中,我们可以通过以下步骤来显示多级记录:

  1. 创建模型(Model):首先,我们需要创建一个模型来定义我们要显示的数据结构。模型是Odoo中数据的基本单元,它定义了数据的字段、关联关系等信息。
  2. 定义字段(Field):在模型中,我们需要定义字段来存储数据。对于多级记录,通常会使用Many2one字段来建立父子关系。Many2one字段表示多对一的关系,它可以将多个子记录关联到一个父记录上。
  3. 创建视图(View):接下来,我们需要创建一个树视图来显示多级记录。树视图可以通过Odoo的视图定义语言(XML)来创建。在树视图中,我们可以指定要显示的字段、排序方式、过滤条件等。
  4. 关联视图和模型:最后,我们需要将视图和模型关联起来。这可以通过在模型中定义_view字段来实现。_view字段指定了要使用的视图,以及视图的类型(树视图、表单视图等)。

通过以上步骤,我们就可以在Odoo中显示多级记录了。在实际应用中,Odoo的多级记录功能可以广泛应用于各种场景,例如组织结构、产品分类、项目管理等。

推荐的腾讯云相关产品:腾讯云服务器(https://cloud.tencent.com/product/cvm)和腾讯云数据库(https://cloud.tencent.com/product/cdb),它们可以为Odoo提供稳定的运行环境和可靠的数据存储。

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

相关·内容

odoo 权限管理学习总结

12.0/base_user_role/ 权限管理 简介 为了更好的熟悉权限,我们先来了解下用户,odoo中的用户分为三类: 内部用户(Internal User): 企业内部的用户,拥有对系统内部的访问权限...中如何区分用户类型以及如何做权限控制的呢?...默认允许的记录规则:如果授予模型访问权限(Access Rights),并且没有规则适用于用户的操作和模型,则授予访问权限 记录规则保存在ir.rule模型表里,我们通过管理ir_rule表中的记录,即可控制记录的访问权限...--仅显示用户自己创建的记录--> <field name="groups" eval="[(4, ref('group_estate_property_record_read'...控制哪些<em>记录</em>可以<em>显示</em>给用户 规则默认适用所有操作。

10.2K20
  • ODOO配置文件etcodoo.conf配置详解

    这是--db filter的目的之一:它指定如何根据所请求的主机名(域)选择数据库。该值是一个正则表达式,可能包括动态注入的主机名(%h)或访问系统所通过的第一个子域(%d)。 ...下面例子以仅显示名称以“mycompany”开头的数据库 [options]   dbfilter = ^mycompany.*$   仅显示与www之后的第一个子域匹配的数据库:例如,如果传入的请求被发送到...配置实例 4 CPU 8线程服务器 60个并发用户 60个用户/6=10<-理论上需要的worker数量 (4×2)+1=9<理论最大worker数 我们将使用8个workers+1作为cron。...我们还将使用监控系统来测量cpu负载,并检查它是否在7到7.5之间。 ... 8192   limit_time_cpu = 600   limit_time_real = 1200   max_cron_threads = 1   workers = 8   5.数据库日志记录配置

    7.3K31

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

    在上一章中已经看到,odoo能够为给定模型生成默认视图。实际上,默认视图对于业务应用程序来说是不可接受的。相反,我们至少应该以逻辑的方式组织各个字段。 视图是在带有操作和菜单的XML文件中定义的。...在我们的estate模块中,我们需要以逻辑方式组织字段: 在列表(树)视图中,我们希望显示的不仅仅是名称。 在表单视图中,应该对字段进行分组。 在搜索视图中,我们必须能够搜索的不仅仅是名称。...列表视图,也叫树(tree)视图, 以表格的形式显示记录。 视图根元素为。...在odoo中,domain对记录上的条件进行编码:domain是用于选择模型记录子集的条件列表。每个条件都是一个包含字段名、运算符和值的三元组。...如果指定字段满足作用于值的运算符的条件,则记录满足条件。

    3.3K40

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

    我们的estate模块中,我们需要有关房产的以下信息: 购买房产的客户 出售房产的真实重述代理人 房产类型:房子、公寓、顶层公寓、城堡… 显示了该酒店特色的一系列标签:舒适、翻新… 收到的报价清单 Many2one...新增一条记录 修改odoo14/custom/estate/models/estate_property.py ,添加property_type_id #!...然而,在本例中,我们希望显示给定地产的报价列表,因此我们将使用one2many概念。 one2many是many2one的反向实现。...odoo如何知道我们的报价与哪个房产相关?这就是使用odoo框架的一部分魔力:有时候事情是隐式定义的。...当我们通过one2many字段创建记录时,为了方便,会自动填充相应的many2one 添加odoo14\custom\estate\models\estate_property_offer.py #!

    4.5K40

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

    在self 上迭代,会一个接一个的生成记录,其中每个记录本身是长度为1的集合。可以使用.(比如 record.name)访问单条记录的字段或者给字段赋值。...提示: create_date 仅在记录创建时被填充,因此需要一个回退,防止创建时的奔溃 在表单和列表视图中添加字段,正如本章目标中显示的第二个动画中的一样。...让我们重新使用我们的示例。...为了实现这一点,我们定义了一个方法,其中self表示表单视图中的记录,并用 onchange()修饰该方法,以指明它由哪个字段触发。...title': _("Warning"), 'message': ('This option is not supported for Authorize.net')}} 如何使用它们

    3.2K30

    如何不让input输入框显示或禁止历史记录

    html的input框获取光标后,会提示原来输入过的内容,还会出现下拉的历史记录,有时候项目中完全不需要这个,大家基本禁止这种情况,基本都是在input中加入:autocomplete="off" 但我今天无意中发现一种情况: 像下面这种的,本身是不会有历史记录出现的。...type="text" id="myinput" class="search-input" placeholder="在这里输入查询关键字" /> 但是如果我把id改一下,像下面这个样子就会出现历史记录...text" id="keywords" class="search-input" placeholder="在这里输入查询关键字" /> 感兴趣的同学可以自己试试看,id="keyword"会出现历史记录...也就是说其实也跟id的关键字有关系,如果input输入框没有设置id,压根也不会弹出历史记录,如果设置了id,不是keyword也不会出现,如果id非设置了keyword那就加个autocomplete

    3.6K50

    在Ubuntu 16.04上安装Odoo 10

    部署后,Odoo允许管理员安装任何模块组合,并根据业务需求配置/定制它,范围从小型商店到企业级公司。 本教程介绍了如何使用Git源代码在一小时内安装和配置Odoo,以便于升级,维护和自定义。...配置日志 对于记录的,Ubuntu 16.04默认使用systemd和journald。考虑到这一点,您可以通过多种方式设置Odoo 10日志。我们将在本教程中考虑两种情况。...您选择的选项取决于您的特定需求: 要同时使用日志和单独的Odoo日志文件,请创建相应的目录: sudo mkdir /var/log/odoo 要仅使用journald用于日志记录,您不需要创建任何目录...包括日志文件的路径,并添加一个新行:logfile = /var/log/odoo/odoo-server.log。如果您打算仅使用journald用于记录,则可以跳过此行。...对于正常安装,您可以跳过此行,并且此Odoo实例将默认连接到端口8069。 注意 如配置日志部分中所述,在Ubuntu 16.04中有很多Odoo日志记录选项。

    3.3K42

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

    当数据链接到视图时,我们将它们添加到views文件夹中 本章,我们将通过XML文件加载我们第一个action和菜单。Actions 和菜单为数据库中的标准记录。...这是因为,在odoo中加载CSV文件比加载XML文件更快。 odoo中,用户接口(action,菜单和视图)大部分是通过创建和组装XML文件中的记录来定义的。...我们Real Estate例子中,希望将一个菜单连接到 estate.property model, 以便创建一个新记录。...然而,菜单总是遵循一种体系结构,实际上有三个层次的菜单: 根菜单,显示在App切换器中(Odoo社区版切换器是一个下拉菜单) 第一级菜单,显示在顶部栏中 动作菜单 最容易的方式是在XML文件中定义结构来创建菜单...Odoo有许多微调方式,但通常第一步是确保: 某些字段有默认值 某些字段只读 当记录重复时,某些字段不能被拷贝 在我们的房产业务案例中,我们希望:: 售价只读(往后将自动填充) 当记录重复时,可用日期和售价不能被拷贝

    3K30

    如何不让input输入框显示或禁止历史记录

    html的input框获取光标后,会提示原来输入过的内容,还会出现下拉的历史记录,有时候项目中完全不需要这个,大家基本禁止这种情况,基本都是在input中加入:autocomplete="off" 但我今天无意中发现一种情况: 像下面这种的,本身是不会有历史记录出现的。...type="text" id="myinput" class="search-input" placeholder="在这里输入查询关键字" /> 但是如果我把id改一下,像下面这个样子就会出现历史记录...text" id="keywords" class="search-input" placeholder="在这里输入查询关键字" /> 感兴趣的同学可以自己试试看,id="keyword"会出现历史记录...也就是说其实也跟id的关键字有关系,如果input输入框没有设置id,压根也不会弹出历史记录,如果设置了id,不是keyword也不会出现,如果id非设置了keyword那就加个autocomplete

    1.6K20

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

    [源代码] bool的封装 class odoo.fields.Char[源代码] 基本字符串字段,长度有限,通常在客户端显示为单行字符串 参数: size(int) – 为该字段可存储最大值...当需要相关行为时,应在模型上定义它们: odoo.fields.name _rec_name的默认值,用于在需要代表性“命名”的上下文中显示记录。...Model.name_create(name) → record[源代码] 通过调用create()创建新记录,调用时create()时只提供一个参数值:新记录显示名称。...(4, id, 0) 添加一条id为指定id的已存在记录记录集 (5, 0, 0) 从结果集移除所有记录, 等价于显示的对每条记录使用命令3。 不能在 create()中使用。...或多或少已实现,如果可以的话避免用它(_inherits is more or less implemented, avoid it if you can) 链式的_inherits基本上没有实现,我们不对最终行为做任何保证

    13.5K10

    odoo 开发入门教程系列-QWeb简史

    Odoo自带内置引擎:QWeb模板。QWeb是Odoo使用的主要模板引擎。它是一个XML模板引擎,主要用于生成HTML片段和页面。 你可能已经在Odoo见过 看板,其中的记录以卡片状结构显示。...目标: 本节结束时创建一个房产的看板视图 在我们的地产应用程序中,我们希望添加一个看板视图来显示我们的房产。看板视图是标准的Odoo视图(如表单和列表视图),但其结构更灵活。...看板视图必须至少定义一个根模板kanban-box,每个记录将呈现一次。 :是QWeb指令的占位符元素。...在本例中,它用于将模板的name设置为kanban-box :oe_kanban_global_click让可点击,以打开记录...当我们需要字段的值但不想在视图中显示它时,可以将其添加到元素之外。

    2.1K20

    odoo 开发入门教程系列-一个新应用

    列表记录详情页中,第一个tab包含了房产的描述信息,比如:bedrooms, Living area, Garage,Garden 第二个tab页,列出了房产的报价。...我们可以在这里看到,潜在买家可以提供高于或低于预期售价的报价,取决于卖方是否接受报价。 准备插件目录 参考: 和该主题相关的文档可参考 manifest....Goal: 该小节的目标是让odoo识别我们的新模块,一个空壳。它将显示在Apps中 创建模块的第一步:新建一个目录。...odoo框架会确保depends中配置的依赖模块在我们的模块被安装之前安装。 而且,如果这些模块中的某个依赖被卸载,我们的模块及其它任何依赖它的模块都会被卸载。...服务: python odoo-bin --addons-path=custom,odoo/addons -r myodoo -w test123 -d odoo 验证 浏览器页面中访问Apps, 点击搜索

    1.3K10

    odoo Actions学习总结

    所有Action都有两个强制属性: type 当前Action的类别,决定可以使用哪些字段以及如何解释action name action的名称,在客户端的界面中显示对action的简短用户可读描述...包含字段: res_model action触发的要显示的视图关联的模型 views (view_id,view_type)对的列表。...(否则创建一个条新记录) search_view_id (可选) (id, name) 对, id 为动作需要加载的指定搜索视图的数据库ID。...context (可选) 传递给视图的附加上下文 domain (可选) 隐式添加到所有视图搜索查询的过滤domain limit (可选) 默认情况下要在列表中显示记录数。...在web客户端中默认为80 name(可选),action名称,界面显示时拼接到当前面包屑导航(现有导航面包屑 / name值)。

    2.6K30
    领券