修改前:

修改后:

xml文件:

<?xml version="1.0" encoding="utf-8"?>
<!-- vim:fdn=3:
-->
<openerp>
<data>
<template id="assets_backend" name="rhwl_gene_inherit assets" inherit_id="web.assets_backend">
<xpath expr="." position="inside">
<script type="text/javascript" src="/rhwl_gene_inherit/static/js/rhwl_gene_inherit.js"></script>
</xpath>
</template>
</data>
</openerp>

js文件:

openerp.rhwl_gene_inherit = function (instance) {
var _t = instance.web._t,
_lt = instance.web._lt;
var QWeb = instance.web.qweb; instance.web.rhwl_gene_inherit = instance.web.rhwl_gene_inherit || {}; instance.web.rhwl_gene_inherit.SearchView = instance.web.ListView.Groups.extend({
init: function (view, options) {
this._super.apply(this, arguments);
// all_batch_str :全局变量用于保存批次名和该批次对应的数量
this.all_batch_str = {};
var self = this;
var Mod = new instance.web.Model('rhwl.easy.genes.new');
Mod.call("get_all_batch_num").then(function(all_batch_num) {
self.all_batch_str = all_batch_num;
});
}, render_groups: function (datagroups) {
var self = this;
for ( var i = 0; i < datagroups.length; i++) {
if (datagroups[i].grouped_on === "batch_no"){
var batch_no_name = datagroups[i].value;
var current_num = datagroups[i].length;
for (batch_str in self.all_batch_str) {
if (batch_str === batch_no_name){
datagroups[i].length = current_num+"/"+self.all_batch_str[batch_str];
}
}
}
}
placeholder = this._super.apply(this, arguments);
return placeholder;
}
}); instance.web.views.add('rhwl_gene_inherit_ListView', 'instance.web.rhwl_gene_inherit.ListView');
instance.web.rhwl_gene_inherit.ListView = instance.web.ListView.extend({
init: function (parent, dataset, view_id, options) {
this._super(parent, dataset, view_id, _.extend(options || {}, {
GroupsType: instance.web.rhwl_gene_inherit.SearchView
}));
}
});
};

py文件:

    def get_all_batch_num(self, cr, uid, context=None):
res = {}
sql_str = "SELECT batch_no, count(*) as batch_count from rhwl_easy_genes_new WHERE batch_no is not NULL GROUP BY batch_no "
cr.execute(sql_str)
for i in cr.fetchall():
res.update({i[0]: i[1]})
return res

odoo 分组视图下显示同一批次记录的总数的更多相关文章

  1. win10开启运行下显示历史操作记录

    步骤 设置,隐私,常规,允许windows跟踪应用启动,以改进开始和搜索结果  

  2. linux下history命令显示历史指令记录的使用方法

    Linux系统当你在shell(控制台)中输入并执行命令时,shell会自动把你的命令记录到历史列表中,一般保存在用户目录下的.bash_history文件中.默认保存1000条,你也可以更改这个值 ...

  3. Odoo form视图详解

    转载请注明原文地址:https://www.cnblogs.com/ygj0930/p/10826350.html 一:Header头部 header区域一般用于展示文档流转的阶段和生命周期,以及动作 ...

  4. Android studio 项目的layout的文件打开,preview 视图无法显示,提示“no sdk found...”可能原因?

    1.安装android studio后启动,引导新的下载的sdk文件夹,不要默认在c:\users\你的用户名\appdata...下的sdk文件夹. 2.如果已经默认的,重新在settings/pr ...

  5. Visual studio 类视图和资源视图不显示的问题

    关于Visual studio 类视图和资源视图不显示的问题 解决方法: 1. 工具—选项—文本编辑器—C/C++—高级,浏览/导航下的禁用数据库选项置为False; 2. 输入命令:devenv / ...

  6. cmd&Linux 下使用mysql全记录

    php mysql数据库常用cmd命令集 show databases; 显示数据库 create database name; 创建数据库 use databasename; 选择数据库 drop ...

  7. MVC4 Razor视图下使用iframe加载RDLC报表

    MVC视图下默认是不支持服务器端控件的,所以,为了能够通过report viewer控件加载报表,需要在MVC视图添加嵌入的页面. 起初在stackoverflow上找到一个解决方案,见这里.不过这里 ...

  8. mysql 分组取最新的一条记录(整条记录)

    方法:mysql取分组后最新的一条记录,下面两种方法.一种是先筛选 出最大和最新的时间,在连表查询.一种是先排序,然后在次分组查询(默认第一条),就是最新的一条数据了  #select * from ...

  9. unity 在Game视图中显示Gizmos

    自己画的Gizmos要想在Game视图中能看到,需要把Game视图窗口右上角的"Gizmos"按钮点下去.如图: 比如,下面代码以角色的capsuleCollider中心为中心画一 ...

随机推荐

  1. python--面向对象:类和对象命名空间

    一.一个类可以定义两种属性:静态属性和动态属性 (一)对于不可变数据类型来说,类变量最好用类名操作,也可以用对象操作,但是只能查,不能改,对象改的都只是相当于在自己的命名空间里重新建立了一个 clas ...

  2. 用CSS3制作50个超棒动画效果教程

    这50个CSS动画集合可以让你通过使用JavaScript函数来让动画更生动.为了能够预览到这些惊人的CSS3技术带来的动画特效,请大家使用如Safari和Chrome这类基于WebKit内核的浏览器 ...

  3. 在IDEA中用Gradle构建项目时使用lombok以依赖出现出错

    情景: 之情一直是使用Maven构建的项目并且导入依赖后都可以正常使用,但是在换成Gradle时出现了不论使用什么版本的lombok的依赖都会提示@Sl4j注解的log找不到,但是编辑界面是不会报错的 ...

  4. 笔记-Linux安装中文版man

    使用环境为Ubuntu,安装中文版man,同时保留了英文原版,步骤如下: 第一种方法 sudo apt-get update # 更新你的下载源目录,此步骤可省略. sudo apt-get inst ...

  5. linux 档案 指令(鸟哥私房菜)

    [ls -al] [ls -l --full-time] 显示文件完整的日期格式 [ls] 显示非隐藏档的文件信息 [ls -al] 显示所有文档信心.文档前面的 “”.“”表明该文档是隐藏档.eg. ...

  6. LGV定理 (CodeForces 348 D Turtles)/(牛客暑期多校第一场A Monotonic Matrix)

    又是一个看起来神奇无比的东东,证明是不可能证明的,这辈子不可能看懂的,知道怎么用就行了,具体看wikihttps://en.wikipedia.org/wiki/Lindstr%C3%B6m%E2%8 ...

  7. WSGI——python-Web框架基础

    1. 简介 WSGI ​ WSGI:web服务器网关接口,这是python中定义的一个网关协议,规定了Web Server如何跟应用程序交互.可以理解为一个web应用的容器,通过它可以启动应用,进而提 ...

  8. lib 和 dll 的区别、生成以及使用详解 ~~包含示例代码~~(转)

    原文章地址:https://www.cnblogs.com/TenosDoIt/p/3203137.html#c 首先介绍一下静态库(静态链接库).动态库(动态链接库)的概念,首先两者都是代码共享的方 ...

  9. photoshop钢笔工具简单记录

    1. 移动锚点 Ctrl + 左键 2. 增加.删除锚点 左键(显示+.-) 3. 直线曲线相互转换 Alt + 左键(注意提示) 默认情况下为直线,按住Alt鼠标左键点击目标锚点,目标锚点两边的直线 ...

  10. 记录下工作中用到的Linux命令

    ---恢复内容开始--- 常用的Linux命令以下命令在博主的开发中经常使用,因此在此做一记录,以做备忘! 1.查看java进程ps -ef|grep javaps aux|grep java lso ...