本文實例講述了Django中使用group_by的方法。分享給大家供大家參考。具體分析如下:
在Django中怎樣使用group_by語句呢?找了很多資料,都沒有看到好的,在這裡分享兩種方法給大家:
首先,我們先建一個簡單的模型。
?
1 2 3 4 5 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)方式一:
?
1 2 book_list = Book.objects.all() book_list.query.group_by = ['author']方式二:
?
1 2 3 query = Book.objects.all().query query.group_by = ['author'] book_list = QuerySet(query = query, model = Book)不過,本人在實際應用中發現一個小小的問題:
如果author字段有空值的話,用方式一會報錯,用方式二木有問題。
希望本文所述對大家的Python程序設計有所幫助。