添加列表和搜索视图
在列表模式下查看模型时,将使用<tree>视图。 树视图能够显示按层级结构组织的行,但大多数时候,它们用于显示简单列表。
我们可以将以下树视图定义添加到 todo_view.xml:
<record id="view_tree_todo_task" model="ir.ui.view">
<field name="name">To-do Task Tree</field>
<field name="model">todo.task</field>
<field name="arch" type="xml">
<tree colors="decoration-muted:is_done==True">
<field name="name"/>
<field name="is_done"/>
</tree>
</field>
</record>
这将定义一个只有两列的列表:name和is_done。 我们还添加了一个很好的交互界面:已完成任务的行(is_done == True)会显示成灰色。 这是通过应用Bootstrap类完成的。
有关Bootstrap及其上下文颜色的更多信息,请参阅http://getbootstrap.com/css/#helper-classes-colors
在列表的右上角,Odoo显示一个搜索框。 它搜索的字段和可用的过滤器是由<search>视图定义的。
和前面一样,我们将它添加到todo_view.xml:
<record id="view_filter_todo_task" model="ir.ui.view">
<field name="name">To-do Task Filter</field>
<field name="model">todo.task</field>
<field name="arch" type="xml">
<search>
<field name="name"/><filter
string="Not Done"
domain="[('is_done','=',False)]"/>
<filter string="Done"
domain="[('is_done','!=',False)]"/>
</search>
</field></record>
<field>元素定义了在搜索框中输入时也能搜索的字段。 <filter>元素添加了预定义的过滤条件(过滤条件可以通过用户点击来切换),是使用特定语法来定义的。