转载请注明原文地址:https://www.cnblogs.com/ygj0930/p/10826414.html

TreeView:列表视图

1:<tree>标签的属性

【tree标签内的属性,就是界面上的表现、行为,可以通过视图继承,往tree标签增加属性来自定义tree视图的按钮。】

列表视图的根元素是<tree>,它可以有以下几种属性:

1)editable

默认情况下选择单行记录时会打开对应记录的表单,该属性让数据可以在列表内进行编辑,有效的值是top和bottom,可在列表的顶部或底部添加新记录。

2)default_order

重定义视图的排序规则,以逗号分隔多个字段,可使用desc来进行倒序<tree default_order="sequence,name desc">

3)decoration-样式名

样式可为  bf加粗, it斜体 或 其他bootstrap样式如:danger红色, info, muted, primary, success绿色,warning橙色等等值为python表达式,对每条记录执行相应表达式判断,当结果为true的时候将对应的样式应用。

也可以直接在标签的css样式值中使用表达式来动态设置,如设置颜色:

colors="gray:state=='cancel';red:state=='audit';green:state=='done';blue:state in('draft','confirm');"

4)create, edit, delete

可以通过将它们设置为false来禁用视图中的对应操作按钮:create对应创建按钮、edit对应编辑按钮、delete对应界面上 下拉菜单对 删除 菜单项。

5)on_write

只当启用editable时有用,在tree视图新增或修改记录时,会自动调用on_write属性值对应对函数,并且会把新增/修改的记录作为参数传入【可以在该函数执行一些数据校验、唯一性校验】。该函数需要返回一个用于更新列表的记录id列表。

6)继承tree视图,往tree标签增加属性,从而实现在tree界面上新增按钮

2:tree视图中的元素

【tree标签之间等内容就是列表行内容。】

1)button标签:定义一个按钮,可以根据当前行某个字段值,动态控制行内按钮的显示或隐藏。按钮通过跳转到向导,context中会把对应行记录的id作为active_id传递过去。

属性列表:
1.icon -- 用来展示按钮的图标
2.string -- 当没有icon的时候,button显示的文字,有icon的时候、相当于alt属性值
3.type -- 按钮类型,表示点击它之后如何影响系统
1)workflow(默认):将按钮name作为信号发送给工作流,记录的内容作为参数
2)object : 调用当前数据列表模型的方法,方法名是按钮的name,调用时带有记录id和当前上下文环境
3)action : 加载ir.actions,按钮name是该action在数据库的id,上下文环境扩展到列表的model(作为active_model)、当前记录(active_id)、所有当前加载记录的id(active_ids)
4.name--按钮的响应函数、工作流信号、action_id
5:args--传递给响应函数的参数
6.attrs 基于记录值的某个字段值,将domain表达式应用在该行字段值上,当返回值为True的时候设置相应的属性,一般属性有 invisible (隐藏)、readonly (只读但显示)
7.states invisible属性attrs的简写,给出一个以逗号分隔的state列表,需要模型有一个对应的state属性,可以将不在state列表中的记录的按钮隐藏
8.context 作为额外的数据携带,在跳转、函数调用时传递过去
9.confirm 当点击按钮时给出的确认消息

2)field字段标签:显示记录的字段值

属性列表:
1.name 字段名
2.string 该列头的文本名称,默认是字段名,可以在界面上自定义显示名
3.invisible 查询而且保存该字段,但界面上不显示
4.groups 可以看到该字段的用户组列表
5.widget 字段的展示形式:
progressbar 进度条用于展示浮点数
many2onebutton当关联字段值存在时显示勾,不存在显示X
handle对于排序字段,直接显示向上向下箭头
sum, avg 在底部显示基于当前页面数据的求和或平均值
attrs 基于记录值的动态属性【属性一般有两个:invisible\readonly】,只对当前栏有效,即可以第一条记录中该字段显示,第二条隐藏,由domain表达式决定。 6.field的值支持用eval语法来运算某个表达式获得:例如:<field name="user_id" eval="ref('base.group_user')" />

Odoo treeView列表视图详解的更多相关文章

  1. Odoo search 搜索视图详解与搜索视图工作原理

    转载请注明原文地址:https://www.cnblogs.com/ygj0930/p/10826430.html 搜索视图 搜索视图的search标签本身没什么属性可以使用,只要是<searc ...

  2. iOS 6分享列表——UIActivityViewController详解

    iOS 6分享列表——UIActivityViewController详解 2013-06-03 01:42:33     发表评论 在iOS 6之后提供了一个分享列表视图,它通过UIActivity ...

  3. ASP.NET MVC 5 学习教程:Edit方法和Edit视图详解

    原文 ASP.NET MVC 5 学习教程:Edit方法和Edit视图详解 起飞网 ASP.NET MVC 5 学习教程目录: 添加控制器 添加视图 修改视图和布局页 控制器传递数据给视图 添加模型 ...

  4. 【译】ASP.NET MVC 5 教程 - 7:Edit方法和Edit视图详解

    原文:[译]ASP.NET MVC 5 教程 - 7:Edit方法和Edit视图详解 在本节中,我们继续研究生成的Edit方法和视图.但在研究之前,我们先将 release date 弄得好看一点.打 ...

  5. Linux "ls -l"文件列表权限详解

    ls Linux "ls -l"文件列表权限详解 1.使用 ls -l 命令 执行结果如下(/var/log) : drwxr-x--- root adm -- : apache2 ...

  6. [转]PostgreSQL教程(十六):系统视图详解

    这篇文章主要介绍了PostgreSQL教程(十六):系统视图详解,本文讲解了pg_tables.pg_indexes.pg_views.pg_user.pg_roles.pg_rules.pg_set ...

  7. python第七篇:Python 列表操作详解

    Python列表操作详解 list函数 list()   #生成一个空的列表 list(iterable)  #用可迭代对象初始化一个列表 列表的 and 运算和 or 运算 列表and运算 > ...

  8. (转)oracle视图详解

    Oracle视图详解   一. 视图的定义 视图(view),也称虚表, 不占用物理空间,这个也是相对概念,因为视图本身的定义语句还是要存储在数据字典里的.视图只有逻辑定义.每次使用的时候,只是重新执 ...

  9. odoo项目结构参数属性详解

    1.基础文件及目录结构 在认识odoo ORM框架前,先介绍一下odoo中模块目录结构.   data:存放模块预制数据i18n:存放国际化文件models:存放模型等py代码security:存放权 ...

随机推荐

  1. AutoResetEvent介绍及使用场景

    AutoResetEvent 允许线程通过发信号互相通信.通常,此通信涉及线程需要独占访问的资源. 线程通过调用 AutoResetEvent 上的 WaitOne 来等待信号.如果 AutoRese ...

  2. react服务端渲染框架

    客户端渲染 加载一个空的html页面,然后请求一个打包的js文件,然后再客户端执行这个js文件 动态生成html内容然后插入到DOM元素上,在源代码查询中也只能看到空的html文档 没有任何其他内容 ...

  3. Apex 中 DML 进阶知识小结

    DML 选项 在 DML 语句执行的时候可以设置选项.这些选项用 DML.Options 类来表示. 完整的介绍在官方文档中. 在建立一个 DML.Options 实例之后,可以使用 setOptio ...

  4. DBLog: A Generic Change-Data-Capture Framework

    转自:https://medium.com/netflix-techblog/dblog-a-generic-change-data-capture-framework-69351fb9099b 期待 ...

  5. withDefaultPasswordEncoder() 过时弃用问题

    在学springsecurity5.X时,在demo里,内存配置用户的时候,提示withDefaultPasswordEncoder过时,特查看了源码,官方给出的理由是: /** @deprecate ...

  6. c#中怎样取得某坐标点的颜色

    // x,y 分别为x轴,y轴坐标 返回System.Drawing.Color 可以直接显示 public System.Drawing.Color GetPixelColor(int x, int ...

  7. AbstractExecutorService源码

    public class RunnableFutureTask { static FinalizableDelegatedExecutorService executorService = (Fina ...

  8. Java8 新特性 Data Time API

    Java8新的日期类型 在Java8以前,Date日期API对我们非常的不友好,它无法表示日期,只能以毫秒的精试来表示时间,并且可以修改,他的线程还不是安全的.所以Java8中引入了全新的日期和时间A ...

  9. Redis学习之intset整数集合源码分析

    1.整数集合:整数的集合,升序排序,无重复元素 2.整数集合intset是集合键的底层实现之一,当一个集合只包含整数值的元素,并且这个集合的元素数量不多时,redis会使用整数集合作为集合键的底层实现 ...

  10. ElasticSearch如何更新集群的状态

    ElasticSearch如何更新集群的状态 最近发生了很多事情,甚至对自己的技术能力和学习方式产生了怀疑,所以有一段时间没更新文章了,估计以后更新的频率会越来越少,希望有更多的沉淀而不是简单地分享. ...