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('.........')

你可能感兴趣的:(django)