Django中使用group_by的方法

 更新时间:2015年05月26日 10:05:26   作者:NavCat  
这篇文章主要介绍了Django中使用group_by的方法,实例分析了在Django中使用group_by语句的相关技巧,需要的朋友可以参考下

本文实例讲述了Django中使用group_by的方法。分享给大家供大家参考。具体分析如下:

在Django中怎样使用group_by语句呢?找了很多资料,都没有看到好的,在这里分享两种方法给大家:

首先,我们先建一个简单的模型。

class Book(models.Model): 
   name = models.CharField(u'书名',max_length=255,db_index = True) 
   author = models.CharField(u'作者',max_length=255) 
   remark = models.CharField(u'备注',max_length=255) 
   pub_date = models.DateTimeField(u'发表时间',auto_now_add = True) 

方式一:

book_list = Book.objects.all() 
book_list.query.group_by = ['author'] 

方式二:

query = Book.objects.all().query 
query.group_by = ['author'] 
book_list = QuerySet(query = query, model = Book) 

不过,本人在实际应用中发现一个小小的问题:

如果author字段有空值的话,用方式一会报错,用方式二木有问题。

希望本文所述对大家的Python程序设计有所帮助。

相关文章

  • Python轻量级定时任务调度APScheduler的使用

    Python轻量级定时任务调度APScheduler的使用

    Apscheduler是一个基于Quartz的python定时任务框架,本文主要介绍了Python轻量级定时任务调度APScheduler的使用,具有一定的参考价值,感兴趣的可以了解一下
    2024-02-02
  • Python 函数基础知识汇总

    Python 函数基础知识汇总

    Python中的函数,无论是命名函数,还是匿名函数,都是语句和表达式的集合。函数可以作为参数传递给其他函数,这些以其他函数作为参数的函数通常称为更高阶函数,这就构成了函数式编程中一个非常重要的部分。
    2018-03-03
  • Jupyter notebook如何修改平台字体

    Jupyter notebook如何修改平台字体

    这篇文章主要介绍了Jupyter notebook如何修改平台字体,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-05-05
  • PyQt5每天必学之带有标签的复选框

    PyQt5每天必学之带有标签的复选框

    这篇文章主要为大家详细介绍了PyQt5每天必学之复选框的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-04-04
  • 浅谈五大Python Web框架

    浅谈五大Python Web框架

    Python这么多框架,能挨个玩个遍的人不多,坦白的说我也只用过其中的三个开发过项目,另外一些稍微接触过,所以这里只能浅谈一下,欢迎懂行的朋友们补充
    2017-03-03
  • Python交互式图形编程的实现

    Python交互式图形编程的实现

    这篇文章主要介绍了Python交互式图形编程的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-07-07
  • pandas通过loc生成新的列方法

    pandas通过loc生成新的列方法

    今天小编就为大家分享一篇pandas通过loc生成新的列方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-11-11
  • 使用Python的Django框架结合jQuery实现AJAX购物车页面

    使用Python的Django框架结合jQuery实现AJAX购物车页面

    这篇文章主要介绍了使用Python的Django框架结合jQuery实现AJAX购物车页面的方法,示例基于Django中构建好的JSON格式的RESTful API需要的朋友可以参考下
    2016-04-04
  • Python使用OpenCV对彩色图像进行通道分离的项目实践

    Python使用OpenCV对彩色图像进行通道分离的项目实践

    通道分离是将彩色图像的每个像素分解为三个通道(红、绿、蓝)的过程,本文主要介绍了Python使用OpenCV对彩色图像进行通道分离的项目实践,感兴趣的可以了解一下
    2023-08-08
  • python3.7.0的安装步骤

    python3.7.0的安装步骤

    本文分步骤给大家介绍了python3.7.0的安装步骤,本文图文并茂给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2018-08-08

最新评论