odoo17开发教程(10):自定义搜索

本文介绍了Odoo中搜索视图的工作原理,包括如何定义域来筛选搜索条件,以及如何在estate_property_views.xml中添加自定义搜索功能,如字段过滤、分组和预定义搜索。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

搜索视图的简介

"域 "domain的概念

实践,为我们的模块添加搜索


搜索视图的简介

搜索视图与列表和表单视图略有不同,因为它们不显示内容。虽然它们适用于特定的模型,但它们用于过滤其他视图的内容(通常是聚合视图,如列表)。除了用例不同外,它们的定义方式是一样的。

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

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

Odoo 生成的默认搜索视图提供了按名称过滤的快捷方式。在自定义搜索视图中添加用户可能过滤的字段是很常见的。

搜索视图还可以包含 <filter> 元素,作为预定义搜索的切换器。过滤器必须具有以下属性之一:

  • 域domain:将给定域添加到当前搜索中
  • context:为当前搜索添加一些上下文;使用关键字 group_by 对给定字段名的结果进行分组

让我们看一个源码中的实例:

        <record id="view_delivery_carrier_search" model="ir.ui.view">
            <field name="name">delivery.carrier.search</field>
            <field name="model">delivery.carrier</field>
            <field name="arch" type="xml">
                <search string="Delivery Carrier">
                    <field name="name" string="Carrier" />
                    <field name="delivery_type"/>
                    <separator/>
                    <filter string="Archived" name="inactive" domain="[('active', '=', False)]"/>
                    <group expand="1" string="Group By">
                        <
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值