model查询 -- F && Q

  • F  -- 对表中的某个字段操作
    • 将book表中所有书的价格增加100元
    • Book.objects.update(price=F("price")+100)
      

       

  • Q -- 多条件查询
    • Book.objects.filter(title='php', price__lt=500)  只能查询满足title='php'并且price__lt=500的书,无法做或条件的查询    

       

    • 查询title='php'或者price__lt=500的书
    • Book.objects.filter(Q(title='php') | Q(price__lt=500))
      

       

    • 查询title='php'并且price__lt=500的书
    • Book.objects.filter(Q(title='php') & Q(price__lt=500))
      

       

    • 查询书名不是php的书
    • Book.objects.filter(~Q(title='php'))
      

       

    • Q对象可以与关键字参数查询一起使用,不过一定要把Q对象放在关键字参数查询的前面。
    • Book.objects.filter(Q(id=1) | Q(price__lt=500), title__startswith='P')
      

       

 

 

posted @ 2018-10-13 10:19  运维00001  阅读(201)  评论(0编辑  收藏  举报