orm單表查詢和模糊查詢
一.單表查詢
1. 返回queryset對象的查詢
all() 以列表形式返回全部queryset對象
filter(**kwargs) 篩選
exclude(**kwargs) 排除
reverse() 反轉
order_by(field) 排序
distinct() 去重
2. 特殊的queryset對象
values(field) 返回一個可叠代的裝有字典的列表
values_list(field) 返回一個可叠代的裝有元組的列表
3. 返回具體對象
get(**kwargs) 只能獲取一個對象,或者報錯
first() 第一個,等價於all()[0]
last() 最後一個
4. 返回布爾值
exists() 判斷對象列表是否為空
5. 返回數字
count() 計數,返回對象列表的個數
二. 雙下劃線模糊查詢__
對關鍵字查詢的約束
1. 數字查詢
id__gt=10 id大於10的 gte是大於等於
id__lt=10 id小於10的 lte是小於等於
id__rang=[10,20] id在10-20之間的
id__in=[10,20] id為10或者20的
2. 字符串查詢
title__contains="string" 字符串中包含string的,icontains區分大小寫
title__startswith="str" 以str開頭的字符串,istartswith區分大小寫
title__endswith="ing" 以ing結尾的字符串,iendswith區分大小寫
3. 日期
date__year=2019 日期是2019年的,month月,day日
orm單表查詢和模糊查詢