Django中使用group_by的方法
本文實(shí)例講述了Django中使用group_by的方法。分享給大家供大家參考。具體分析如下:
在Django中怎樣使用group_by語(yǔ)句呢?找了很多資料,都沒有看到好的,在這里分享兩種方法給大家:
首先,我們先建一個(gè)簡(jiǎn)單的模型。
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'發(fā)表時(shí)間',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)
不過,本人在實(shí)際應(yīng)用中發(fā)現(xiàn)一個(gè)小小的問題:
如果author字段有空值的話,用方式一會(huì)報(bào)錯(cuò),用方式二木有問題。
希望本文所述對(duì)大家的Python程序設(shè)計(jì)有所幫助。
相關(guān)文章
Python輕量級(jí)定時(shí)任務(wù)調(diào)度APScheduler的使用
Apscheduler是一個(gè)基于Quartz的python定時(shí)任務(wù)框架,本文主要介紹了Python輕量級(jí)定時(shí)任務(wù)調(diào)度APScheduler的使用,具有一定的參考價(jià)值,感興趣的可以了解一下2024-02-02Python 函數(shù)基礎(chǔ)知識(shí)匯總
Python中的函數(shù),無論是命名函數(shù),還是匿名函數(shù),都是語(yǔ)句和表達(dá)式的集合。函數(shù)可以作為參數(shù)傳遞給其他函數(shù),這些以其他函數(shù)作為參數(shù)的函數(shù)通常稱為更高階函數(shù),這就構(gòu)成了函數(shù)式編程中一個(gè)非常重要的部分。2018-03-03PyQt5每天必學(xué)之帶有標(biāo)簽的復(fù)選框
這篇文章主要為大家詳細(xì)介紹了PyQt5每天必學(xué)之復(fù)選框的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-04-04使用Python的Django框架結(jié)合jQuery實(shí)現(xiàn)AJAX購(gòu)物車頁(yè)面
這篇文章主要介紹了使用Python的Django框架結(jié)合jQuery實(shí)現(xiàn)AJAX購(gòu)物車頁(yè)面的方法,示例基于Django中構(gòu)建好的JSON格式的RESTful API需要的朋友可以參考下2016-04-04Python使用OpenCV對(duì)彩色圖像進(jìn)行通道分離的項(xiàng)目實(shí)踐
通道分離是將彩色圖像的每個(gè)像素分解為三個(gè)通道(紅、綠、藍(lán))的過程,本文主要介紹了Python使用OpenCV對(duì)彩色圖像進(jìn)行通道分離的項(xiàng)目實(shí)踐,感興趣的可以了解一下2023-08-08