Django中自定義查詢對象的具體使用
更新時間:2019年10月13日 15:19:35 作者:Python小子
這篇文章主要介紹了Django中自定義查詢對象的具體使用,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
自定義查詢對象 - objects
①聲明一個類EntryManager,繼承自models.Manager,并添加自定義函數(shù)
②使用創(chuàng)建的自定義類EntryManager 覆蓋Models中的objects
# models.py
class AuthorManager(models.Manager): # 新建一個類,繼承自models.Manager
def name_count(self, keywords): # 添加自定義的查詢函數(shù)
'''統(tǒng)計姓名中含有某些關(guān)鍵字的數(shù)量'''
return self.filter(name__contains=keywords).count()
def lt_age(self, age):
'''查詢年齡小于指定年齡的信息'''
return self.filter(age__lt=age)
class Author(models.Model):
objects = AuthorManager() # 使用創(chuàng)建的自定義類覆蓋objects
name = models.CharField(max_length=30, verbose_name='姓名')
age = models.IntegerField(verbose_name='年齡')
email = models.EmailField(null=True, verbose_name='郵箱')
picture = models.ImageField(null=True, upload_to='static/upload/usring', verbose_name='用戶頭像')
publisher = models.ManyToManyField(Publisher, null=True, verbose_name='出版社')
# views.py
def myself(request):
'''自定義查詢函數(shù)'''
# 統(tǒng)計名字中包含王字的
num = Author.objects.name_count(keywords='王')
# 查詢年齡小于36的作者信息
authors = Author.objects.lt_age(age=36)
return render(request, 'name_count.html', locals())
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
您可能感興趣的文章:
- Django ORM 聚合查詢和分組查詢實現(xiàn)詳解
- django 中的聚合函數(shù),分組函數(shù),F(xiàn) 查詢,Q查詢
- Django Aggregation聚合使用方法解析
- django的聚合函數(shù)和aggregate、annotate方法使用詳解
- Django之無名分組和有名分組的實現(xiàn)
- Django 表單模型選擇框如何使用分組
- 對Django中的權(quán)限和分組管理實例講解
- django框架使用views.py的函數(shù)對表進(jìn)行增刪改查內(nèi)容操作詳解【models.py中表的創(chuàng)建、views.py中函數(shù)的使用,基于對象的跨表查詢】
- django框架基于queryset和雙下劃線的跨表查詢操作詳解
- django框架F&Q 聚合與分組操作示例
相關(guān)文章
Python編程使用matplotlib挑鉆石seaborn畫圖入門教程
這篇文章主要為大家介紹了Python編程中使用matplotlib繪圖包來挑出完美的鉆石,本篇是seaborn包畫圖使用入門篇,有需要的朋友可以借鑒參考下2021-10-10
python實現(xiàn)處理Excel表格超詳細(xì)系列
這篇文章主要介紹了python實現(xiàn)處理Excel表格超詳細(xì)系列,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下2022-08-08
pygame用blit()實現(xiàn)動畫效果的示例代碼
這篇文章主要介紹了pygame用blit()實現(xiàn)動畫效果的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-05-05
python3 adb 獲取設(shè)備序列號的實現(xiàn)
這篇文章主要介紹了python3 adb 獲取設(shè)備序列號的實現(xiàn)操作,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-06-06
python中的List sort()與torch.sort()
這篇文章主要介紹了python中的List sort()與torch.sort()使用方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-09-09

