本文主要介紹了Odoo 搜索視圖的開發方法並提供代碼示例
搜索視圖
search的可以設置一個filter_domain屬性用來覆蓋原field的匹配方法,其中的self代表用戶的輸入值。field字段用來定義給出過濾選項。另外可以用filter預定義一些搜索條件的快捷方式。group用來分組。
<search string="Ideas">
<field name="name"/>
<field name="description" string="Name and description"
filter_domain="['|', ('name', 'ilike', self), ('description', 'ilike', self)]"/>
<field name="inventor_id"/>
<field name="country_id" widget="selection"/>
<filter name="my_ideas" string="My Ideas"
domain="[('inventor_id', '=', uid)]"/>
<group string="Group By">
<filter name="group_by_inventor" string="Inventor"
context="{'group_by': 'inventor_id'}"/>
</group>
</search>
在action里通過search_view_id指定搜索視圖
使用search_default指定默認篩選條件
在action中還能通過在context里指定默認開啟的搜索條件,使用{'search_default_field_name':1}
field_name為搜索視圖中filter對應的名稱,1表示真值。
如odoo原生的app界面過濾應用使用了如下代碼
search view里定義filter
action里調用
{'search_default_app':1}
效果
參考文章: https://www.erpdaxue.cn/odoo/odoo教程/odoo-搜索視圖詳解/
