XXX,DJANGO ORM里确实有很深的水,需要慢慢理解。。

比如:

获取指定时间段的数据:

app.deployversion_set.filter(add_date__range=(date_start, date_end))按月获取记录数:
app_month = DeployVersion.objects.extra(select={'month': connections[DeployVersion.objects.db].ops.date_trunc_sql('month', 'add_date')}).values('month').annotate(dcount=Count('add_date'))

class DeployVersionSAAppView(TemplateView):
    template_name = 'version/sa_deployversion_app.html'

    def get_context_data(self, **kwargs):
        context = super(DeployVersionSAAppView, self).get_context_data(**kwargs)
        app_dict = {}
        app_month_dict = {}
        appcount = App.objects.annotate(num_app=Count('deployversion'))
        for app in appcount:
            if self.request.GET.has_key('date_start') and self.request.GET.has_key('date_end') :
                date_start = self.request.GET['date_start']
                date_end = self.request.GET['date_end']
                context['days'] = date_start+'至'+date_end
                app_qryset = app.deployversion_set.filter(add_date__range=(date_start, date_end))
            else:
                context['days'] = '所有时间'
                app_qryset = app.deployversion_set.all()
            if app_qryset.count():
                    app_key = str(app.name)
                    app_dict[app_key] = app_qryset.count()
        app_month = DeployVersion.objects.extra(select={'month': connections[DeployVersion.objects.db].ops.date_trunc_sql('month', 'add_date')}).values('month').annotate(dcount=Count('add_date'))
        for app_count in app_month:
            app_count_item = str(app_count['month'])[:7]
            if app_month_dict.has_key(app_count_item):
                app_month_dict[app_count_item] += 1
            else:
                app_month_dict[app_count_item] = 1
        app_month_list = sorted(app_month_dict.items(), key=lambda d: d[0], reverse=False)
        month_categories = []
        month_data = []
        for item_temp in app_month_list:
            month_categories.append(item_temp[0])
            month_data.append(item_temp[1])
        categories = app_dict.keys()
        data = app_dict.values()
        context['now'] = timezone.now()
        context['current_page'] = "deployversion-list-sa-app"
        context['form'] = SAAppForm
        context['categories'] = categories
        context['data'] = data
        context['month_categories'] = month_categories
        context['month_data'] = month_data

        return context

哈哈,本周个人超计划搞定。

DJANGO输出HIGHCHARTS数据的样例的更多相关文章

  1. <数据可视化>样例+数据+画图

    1 样例 1.1样例1 子图系列 from pylab import * def f(x): return np.exp(-x) * np.cos(2*np.pi*x) x1 = np.arange( ...

  2. 【转】django的ORM操作数据库样例

    这个算是我看到的大全了,希望可以解决明天我希望解决的两个问题... class Blog(models.Model): name = models.CharField(max_length=100) ...

  3. ADNI数据和样例

    ADNI临床数据集: 由各个学科的临床信息组成,包括招募.人口统计特征.体格检查和认知评估数据 所收集的临床数据: 基因数据: ILLUMINA SNP基因分型检测 ADNI的一个关键目标就是为研究人 ...

  4. python爬虫爬取get请求的页面数据代码样例

    废话不多说,上代码 #!/usr/bin/env python # -*- coding:utf-8 -*- # 导包 import urllib.request import urllib.pars ...

  5. 最简单的视音频播放演示样例5:OpenGL播放RGB/YUV

    ===================================================== 最简单的视音频播放演示样例系列文章列表: 最简单的视音频播放演示样例1:总述 最简单的视音频 ...

  6. 网易2018.03.27算法岗,三道编程题100%样例AC题解

    博主欢迎转载,但请给出本文链接,我尊重你,你尊重我,谢谢~http://www.cnblogs.com/chenxiwenruo/p/8660814.html特别不喜欢那些随便转载别人的原创文章又不给 ...

  7. [转] Lodop、C-Lodop使用说明及样例

    本文转自:http://www.lodop.net/LodopDemo.html Lodop(标音:劳道谱,俗称:露肚皮)是专业WEB控件,用它既可裁剪输出页面内容,又可用程序代码直接实现 复杂打印. ...

  8. WEB打印控件Lodop(V6.x)使用说明及样例

    WEB打印控件Lodop(V6.x)使用说明及样例 Lodop是专业WEB控件,用它既可裁剪输出页面内容,又可用程序代码生成复杂打印页. 控件功能强大,却简单易用,所有调用如同JavaScript扩展 ...

  9. 最简单的基于FFmpeg的AVDevice样例(读取摄像头)

    =====================================================最简单的基于FFmpeg的AVDevice样例文章列表: 最简单的基于FFmpeg的AVDev ...

随机推荐

  1. Cocos2d-x中__Dictionary容器以及实例介绍

    __Dictionary类在Cocos2d-x 2.x时代它就是CCDictionary类,它是模仿Objective-C中的NSDictionary类而设计的,通过引用计数管理内存.__Dictio ...

  2. phpmyadmin安装教程及配置设置

    phpmyadmin安装教程及配置设置 | 浏览:20304 | 更新:2013-11-07 09:50 1.一般网上下载到的phpmyadmin是一个压缩包,我们将其释放到htdocs目录中,例如h ...

  3. using System.Threading;

    /// <summary> /// 执行动作:耗时而已 /// </summary> private void TestThread(string threadName) { ...

  4. Bugzilla+MySql+IIS+ActivePerl搭建指南

    头在忙着他的技术研究,对团队建设.测试管理.流程规范都不怎么理会,眼见着产品进入后期整合阶段,在测试过错中出现很多Bug,单靠着我一个人用txt来收集整理bug需求,然后整理成word,放在svn上面 ...

  5. Docker容器里时间与宿主机不同步

    docker容器里时间设置: 第一种: Dockerfile文件中添加一行:RUN cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime或者 第二种: ...

  6. [转帖]译文:如何使用SocketAsyncEventArgs类(How to use the SocketAsyncEventArgs class)

    原文链接:http://norke.blog.163.com/blog/static/276572082011828104315941/ 引言 我一直在探寻一个高性能的Socket客户端代码.以前,我 ...

  7. MySQL基础学习之函数

    数学函数 绝对值      abs() 圆周率      PI() 平方根 sqrt() 模除取余   mod(被除数,除数) 随机数      rand() 四舍五入    round(数字) 次方 ...

  8. php版获取重定向后地址的代码分享

    如何获取重定向的地址呢?我们用php实现这样的功能,分享下我的代码,有需要的朋友参考下. 代码如下: <?php //取重定向的地址 class RedirectUrl{ //地址 var $u ...

  9. php连接ftp

    PHP连接ftp,发现一个很好用的类库phpseclib.英文原文 Connecting to SFTP with PHP If you need to connect to SFTP using P ...

  10. 《CSS3使用指南》读书笔记

    一.CSS3的来龙去脉 1.CSS3的新特性: 1)不依赖图片的视觉效果 2)盒容器变形 3)独一无二的字体 4)强大的选择器 5)过渡与动画 6)媒体信息查询 7)多列布局 2.CSS标准发布分5个 ...