odoo11.0 模块开发View讲解(二) -- 高级View
Tree views
所谓的高级,就是我们为树视图增加一些修饰属性,定制他们的一些行为
decoration-{$name}
# 参数 bf # font-weight: bold 一种字体(粗体) it # font-style: italic 一种斜体 danger # 可以让列表满足条件的显示红色字体,表示危险 info # 类似danger muted # 类似danger,一种灰色 primary # 类似danger success # 类似danger warning # 类似danger
<!--像这样用,属性要写存在于tree中要显示的属性--> <tree decoration-muted="name=='橘子'" decoration-primary="name=='香蕉'"> <field name="start_time" widget="date"/> <field name="name"/> <field name="number"/> </tree>
editable
使tree视图直接具备编辑能力,点击tree就会触发,不过如果实现这个,对于点击进入form视图就冲突,form视图不会再显示了。
# 参数
top
bottom
<!--像这样用-->
<tree string="Idea Categories" editable="top">
<field name="name"/>
<field name="state"/>
</tree>
Calendars
日历,其根元素是calendar,它将会显示在右侧列表按钮旁边
# 常见属性
color # 用于颜色分割的字段的名称
date_start # 记录包含事件开始日期/时间的字段。
date_stop # 这个属性可选不一定非写,记录保存事件结束日期/时间的字段。
Graph views
图形化视图,它将会显示在右侧列表按钮旁边。它有几种显示模式:条形(默认模式)、线形、饼状
# 参数
graph 元素下的:
1.type属性:表示graph显示类型
bar # 条形(默认)
line # 线形
pie # 饼状
2.stacked属性(布尔值参数):表示图形是否需要堆叠的方式排列,仅仅在 bar 的情况下生效
True #堆叠排列(垂直)
False #水平排列
field元素下的:
1.type属性:
row # 按个数,默认值
measure # 这个值是叠加值,会直接让同一类型所有值求和
<record model="ir.ui.view" id="openacademy_session_graph_view">
<field name="name">temperature_alarm.graph</field>
<field name="model">temperature_alarm.temperature_alarm</field>
<field name="arch" type="xml">
<graph string="Participations by Courses" type="bar">
<!--第一个写的代表横轴-->
<field name="start_time"/>
<!--第二个写的表示颜色标识符-->
<field name="name"/>
<!--后面写的-->
</graph>
</field>
</record>