單表操做

數據遷移命令:

-python3 manage.py makemigrations   --->只是對變化作一個記錄,記錄文件在app的migrations
-python3 manage.py migrate   ---->把更改提交到數據庫
-python3 manage.py showmigrations  ---->查看那個沒有提交到數據庫

查詢api

<1> all():                  查詢全部結果                        
<2> filter(**kwargs):       它包含了與所給篩選條件相匹配的對象         
<3> get(**kwargs):          返回與所給篩選條件相匹配的對象,返回結果有且只有一個,若是符合篩選條件的對象超
                                        過一個或者沒有都會拋出錯誤。 
<4> exclude(**kwargs):      它包含了與所給篩選條件不匹配的對象    
<5> order_by(*field):       對查詢結果排序('-id')    
<6> reverse():              對查詢結果反向排序             
<8> count():                返回數據庫中匹配查詢(QuerySet)的對象數量。    
<9> first():                返回第一條記錄   
<10> last():                返回最後一條記錄          
<11> exists():              若是QuerySet包含數據,就返回True,不然返回False     
<12> values(*field):        返回一個ValueQuerySet——一個特殊的QuerySet,運行後獲得的並非一系列
                                        model的實例化對象,而是一個可迭代的字典序列
<13> values_list(*field):   它與values()很是類似,它返回的是一個元組序列,values返回的是一個字典序列          
<14> distinct():            從返回結果中剔除重複紀錄

基於雙下劃線的模糊查詢

Book.objects.filter(price__in=[100,200,300])
Book.objects.filter(price__gt=100)
Book.objects.filter(price__lt=100)
Book.objects.filter(price__gte=100)
Book.objects.filter(price__lte=100)
Book.objects.filter(price__range=[100,200])
Book.objects.filter(title__contains="python")
Book.objects.filter(title__icontains="python")
Book.objects.filter(title__startswith="py")
Book.objects.filter(pub_date__year=2012)
相關文章
相關標籤/搜索