概要
在Odoo中,有几种基本视图类型,每种视图类型用于不同的目的和场景。这些视图类型包括表单视图(form view)、树视图(tree view)、看板视图(kanban view)、图表视图(graph view)、日历视图(calendar view)、透视表视图(pivot view)、搜索视图(search view)等。
常用视图
1. 表单视图(Form View)
表单视图用于显示和编辑单个记录的详细信息。它通常用于创建、查看或编辑单个记录。
示例:
<record id="view_form_example" model="ir.ui.view"><field name="name">example.form</field><field name="model">example.model</field><field name="arch" type="xml"><form string="Example Form"><sheet><group><field name="name" string="Name"/><field name="description" string="Description"/></group></sheet></form></field>
</record>
2. 树视图(Tree View)
树视图用于显示多条记录的列表,通常用于浏览和管理记录的集合。
示例:
<record id="view_tree_example" model="ir.ui.view"><field name="name">example.tree</field><field name="model">example.model</field><field name="arch" type="xml"><tree string="Example Tree"><field name="name"/><field name="description"/></tree></field>
</record>
3. 看板视图(Kanban View)
看板视图用于以卡片的形式显示记录,通常用于任务或项目管理。
示例:
<record id="view_kanban_example" model="ir.ui.view"><field name="name">example.kanban</field><field name="model">example.model</field><field name="arch" type="xml"><kanban string="Example Kanban"><templates><t t-name="kanban-box"><div class="oe_kanban_card"><strong><field name="name"/></strong><div><field name="description"/></div></div></t></templates></kanban></field>
</record>
4. 图表视图(Graph View)
图表视图用于以图形化方式显示数据,如柱状图、饼图、折线图等。
示例:
<record id="view_graph_example" model="ir.ui.view"><field name="name">example.graph</field><field name="model">example.model</field><field name="arch" type="xml"><graph string="Example Graph" type="bar"><field name="name" type="row"/><field name="value" type="measure"/></graph></field>
</record>
5. 日历视图(Calendar View)
日历视图用于以日历形式显示记录,通常用于事件、任务等具有日期和时间属性的记录。
示例:
<record id="view_calendar_example" model="ir.ui.view"><field name="name">example.calendar</field><field name="model">example.model</field><field name="arch" type="xml"><calendar string="Example Calendar" date_start="start_date" date_stop="end_date"><field name="name"/></calendar></field>
</record>
6. 数据透视视图(Pivot View)
数据透视视图用于以数据透视表的形式显示数据,帮助用户进行数据的汇总和分析。
示例:
<record id="view_pivot_example" model="ir.ui.view"><field name="name">example.pivot</field><field name="model">example.model</field><field name="arch" type="xml"><pivot string="Example Pivot"><field name="name" type="row"/><field name="value" type="measure"/></pivot></field>
</record>
7. 搜索视图(Search View)
搜索视图用于定义在模型上进行搜索和筛选记录的界面。
示例:
<record id="view_search_example" model="ir.ui.view"><field name="name">example.search</field><field name="model">example.model</field><field name="arch" type="xml"><search><field name="name"/><filter string="Name" name="name_filter" domain="[('name', 'ilike', self)]"/></search></field>
</record>
小结
多写多敲多思考,毕竟,知己知彼才能看懂源码。
Tip:本人才学尚浅,如有纰漏,还请不吝赐教!