視圖定義了模型數據如何顯示, 每種類型的視圖代表一種數據可視化模式.
基本的視圖定義
一個視圖是以一條ir.ui.view模型數據的形式定義的.
<record model="ir.ui.view" id="view_id">
<field name="name">view.name</field>
<field name="model">object_name</field>
<field name="priority" eval="16"/>
<field name="arch" type="xml">
<!-- view content: <form>, <tree>, <graph>, ... -->
</field>
</record>
Tree 視圖
Tree view也被稱爲list views, 在一個表格中顯示記錄. 根元素是
<tree>, 最簡形式的tree view只是簡單地列出每條記錄的多個字段, 每個
字段爲一列.
<tree string="Idea list">
<field name="name"/>
<field name="inventor_id"/>
</tree>
Form視圖
Form用於創建或編輯單條記錄, 根元素是<form>, 可以在form中組合各種
高層結構元素(如groups, notebooks)以及交互元素(如buttons, fields).
<form string="Idea form">
<group colspan="4">
<group colspan="2" col="2">
<separator string="General stuff" colspan="2"/>
<field name="name"/>
<field name="inventor_id"/>
</group>
<group colspan="2" col="2">
<separator string="Dates" colspan="2"/>
<field name="active"/>
<field name="invent_date" readonly="1"/>
</group>
<notebook colspan="4">
<page string="Description">
<field name="description" nolabel="1"/>
</page>
</notebook>
<field name="state"/>
</group>
</form>
有notebook的form視圖
Search視圖
Search views用來自定義list views及其它統計/多條記錄視圖中的搜索字
段. 根元素爲<search>, 其子元素定義了在哪些字段上進行搜索.
<search>
<field name="name"/>
<field name="inventor_id"/>
</search>
如果一個模型沒有定義對應的Search view, odoo自動創建一個僅搜索name
字段的search view.