转载请注明原文地址: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. LeetCode 139. Word Break单词拆分 (C++)

    题目: Given a non-empty string s and a dictionary wordDict containing a list of non-emptywords, determ ...

  2. Linux系统运维笔记(6),CentOS 7.6双网卡路由配置

    Linux系统运维笔记(6),CentOS 7.6双网卡路由配置. 一,先确认系统版本: [root@localhost ~]# cat /etc/redhat-releaseCentOS Linux ...

  3. netcore与ef资料收集

    http://www.cnblogs.com/cgzl/p/7661805.html https://www.cnblogs.com/cgzl/p/7675485.html https://www.c ...

  4. SPA框架 Angular、React、Vue

    指尖前端重构(React)技术调研分析   摘要:重构前的技术文档调研与分析,包括技术选型为什么选择react,应用过程中的注意事项等. 一.为什么选择React React是当前前端应用最广泛的框架 ...

  5. linux kernel debug

    1. sysrq http://www.chinaunix.net/old_jh/4/902287.html 常用的SysRq命令(序列)  重启机器的SysRq命令序列是 k(SAK) s(sync ...

  6. Java8 LocalDateTime和Date相互转换

    很想要用Java的时间api,但有时候还是需要转换为Date. 二者的相互转换并不是一步到位那么简单,所以,还是需要记录一下转换的api Date to LocalDateTime Date toda ...

  7. 基于word2vec的文档向量模型的应用

    基于word2vec的文档向量模型的应用 word2vec的原理以及训练过程具体细节就不介绍了,推荐两篇文档:<word2vec parameter learning explained> ...

  8. Https通信原理及Android中实用总结

    一.背景 Http俨然已经成为互联网上最广泛使用的应用层协议,随着应用形态的不断演进,传统的Http在安全性上开始面临挑战,Http主要安全问题体现在: 1,信息内容透明传输. 2,通信对方的身份不可 ...

  9. instr函数的用法

    1.定义 instr函数返回要截取的字符串在源字符串中的位置 语法如下:  instr( string1, string2 [, start_position [, nth_appearance ] ...

  10. BAT: Windows批处理更改当前工作路径

    最近项目上需要获取文件夹下所有文件信息,因为文件夹是在server上,所以想用批处理bat来获取该路径下所有文件信息,然后通过任务计划管理去每天自动运行bat去更新文件信息内容. 获取文件夹下所有文件 ...