Django Q的其他用法

from django.db.models import Q
# 先创建一个大Q
q = Q()
# 设置大Q中的小Q之间都是用 '或' 连接
q.connector = 'OR'

# 添加姓名中包含张的条件
q.children.append(
    Q(('name__contains',''))
)
# 添加年龄大于18岁的条件
q.children.append(
    Q(('age__gt',18))
)

# 查找年龄大于18岁或者名字中包含张的用户
models.User.object.filter(q)

猜你喜欢

转载自www.cnblogs.com/wtil/p/11681416.html