Django的models中QF

Q对象

Q对象可以对关键字进行封装,从而更好的进行条件查询

#以下是view中的一个事例
from django.db.models import Q
from app2 import models
def test(req):
    a = models.Test.objects.filter(Q(name__startswith='le')|Q(name__startswith='lu')) #查询名字开头是'le'或'lu'的对象。
    print(a)
    return HttpResponse('.........')

多个条件的拼接,& 代表和,| 代表或, ~ 代表非

F对象

F对象可以运用于表中字段比较

from app2 import models
from django.db.models import F
def test(req):
    a = models.Test.objects.filter(age__gt=F('heig')) #查询age大于heig的对象
    print(a)
    return HttpResponse('.........')
    原文作者:lemon
    原文地址: https://segmentfault.com/a/1190000019785984
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞