Odoo创建一个自定义UI视图

Odoo能够为给定的模型生成默认视图。在实践中,默认视图对于业务应用程序来说是绝对不可接受的。相反,我们至少应该以合乎逻辑的方式组织各个字段。

 
视图在带有Actions操作和Menus菜单的 XML 文件中定义。它们是模型的 ir.ui.view 实例。

列表视图

列表视图(也称为树视图)以表格形式显示记录。

Their root element is <tree>. The most basic version of this view simply lists all the fields to display in the table (where each field is a column):
它们的根元素是 <tree> 。此视图的最基本版本只是列出要在表中显示的所有字段(其中每个字段都是一列):

<tree string="Tests">
    <field name="name"/>
    <field name="last_seen"/>
</tree>

 

表单视图

表单用于创建和编辑单个记录。
它们的根元素是 <form> 。它们由高级结构元素(组和笔记本)和交互元素(按钮和字段)组成:

<form string="Test">
    <sheet>
        <group>
            <group>
                <field name="name"/>
            </group>
            <group>
                <field name="last_seen"/>
            </group>
        </group>
        <notebook>
            <page string="Description">
                <field name="description"/>
            </page>
        </notebook>
    </sheet>
</form>


可以使用常规的HTML标签,如 div 和 h1 以及属性 class (Odoo提供了一些内置类)来微调外观。

搜索视图

搜索视图与列表视图和表单视图略有不同,因为它们不显示内容。尽管它们适用于特定模型,但它们用于筛选其他视图的内容(通常是聚合视图,如列表)。除了用例的差异之外,它们的定义方式相同。


它们的根元素是 <search> 。此视图的最基本版本仅列出需要快捷方式的所有字段:

<search string="Tests">
    <field name="name"/>
    <field name="last_seen"/>
</search>


Odoo生成的默认搜索视图提供了一个快捷方式,可以按 name 进行筛选。在自定义搜索视图中添加用户可能筛选的字段是很常见的。

搜索视图还可以包含 <filter> 元素,这些元素充当预定义搜索的切换开关。筛选器必须具有以下属性之一:

  • domain: adds the given domain to the current search
    domain :将给定域添加到当前搜索中

  • context: adds some context to the current search; uses the key group_by to group results on the given field name
    context :为当前搜索添加一些上下文;使用键 group_by 对给定字段名称的结果进行分组

Domains 域

在Odoo中,域对记录的条件进行编码:域是用于选择模型记录子集的条件列表。每个条件都是一个三元组,其中包含字段名称、运算符和值。如果指定的字段满足应用于该值的运算符的条件,则记录满足条件。

相关推荐

  1. Odoo创建定义UI视图

    2024-07-19 12:46:01       24 阅读
  2. odoo定义视图

    2024-07-19 12:46:01       37 阅读
  3. IntelliJ IDEA中创建定义项目向导

    2024-07-19 12:46:01       39 阅读
  4. C#面:如何创建定义异常?

    2024-07-19 12:46:01       31 阅读
  5. Android如何创建定义回调接口(例3)

    2024-07-19 12:46:01       25 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-19 12:46:01       70 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-19 12:46:01       74 阅读
  3. 在Django里面运行非项目文件

    2024-07-19 12:46:01       62 阅读
  4. Python语言-面向对象

    2024-07-19 12:46:01       72 阅读

热门阅读

  1. 代码随想录算法训练营第16天|二叉树part 04

    2024-07-19 12:46:01       23 阅读
  2. 华中师范大学学报人文社会科学版

    2024-07-19 12:46:01       26 阅读
  3. 动态规划练习题(2024/7/18)

    2024-07-19 12:46:01       22 阅读
  4. 计算机视觉8 图像增广

    2024-07-19 12:46:01       16 阅读
  5. Linux输出重定向详解

    2024-07-19 12:46:01       18 阅读
  6. ArduPilot开源代码之AP_DAL_RangeFinder

    2024-07-19 12:46:01       17 阅读
  7. 可视化页面LandingPage如何修改组件的内容 - Modstart

    2024-07-19 12:46:01       19 阅读
  8. 【SpringBoot】Controller与Test

    2024-07-19 12:46:01       18 阅读
  9. WPF之URI的使用

    2024-07-19 12:46:01       24 阅读
  10. oracle显示列名,列注释

    2024-07-19 12:46:01       19 阅读
  11. vite+vue3项目初始化搭建

    2024-07-19 12:46:01       15 阅读