添加列表和搜索视图
来自Odoo大V社-odoo中文开发手册
在列表模式下查看模型时,将使用<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 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>元素添加了预定义的过滤条件(过滤条件可以通过用户点击来切换),是使用特定语法来定义的。
上一节:完整的Form视图 下一节:业务逻辑层