您的位置:首页 > 编程语言 > Go语言

django filter 中使用 or (django中Q)

2016-03-15 16:37 543 查看
filter(**kwargs)

返回一个匹配查询参数的新的结果集.

exclude(**kwargs)


返回一个不匹配查询参数的新的结果集.

这个相信大家基本都懂,今天碰到一个需求,要将filter与or 联系起来。发现不会写!!!查了一会资料,发现要用到django Q ,下面简单介绍下:

from django.db.models import Q

Q(question__startswith='Who') | Q(question__startswith='What')

这条对应的sql语句如下

WHERE question LIKE 'Who%' OR question LIKE 'What%'


实际应用中可以这么使用:

user.object.filter(Q(question__startswith='Who') | Q(question__startswith='What'))


这样就可以查询user表中question以'who'或者'what'开头的用户了
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: