DjangoDjango中的模糊查询以及Q对象的简单使用

Posted shiguangyishiyongbuhui

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了DjangoDjango中的模糊查询以及Q对象的简单使用相关的知识,希望对你有一定的参考价值。

Django中的模糊查询:

  需要做一个查找的功能,所以需要使用到模糊查询.

使用方法是:字段名加上双下划线跟上contains或者icontains,icontains和contains表示是否区分大小写.

  实测icontains为不区分大小写,contains为区分大小写.

from djangp.db.models import Q
def select_seller(request,keyword):     
        seller_info= Seller.objects.filter(Q(username__icontains=keyword|Q(nickname__icontains=keyword)|Q(wechat__icontains=keyword))  

Q对象的或与且:

  或的关系:

  上面的代码中使用到了Q对象,使用Q对象在这个例子里表示的是或的关系,表示只要keyword符合其中任意一个条件即可.

Q(condition1)|Q(condition2),在SQL语句里面就是条件1or条件2

  且的关系:

  如果需要表示同时满足多个条件的时候,只需要使用逗号连接即可Q(condition1),Q(condition2),这样表示同时需要满足条件1和条件2

  或与且也是可以同时使用的,使用方法是Q(condition1),Q(condition2)|Q(condition3),这样就可以表示满足条件1的时候,满足条件2或者条件3..

以上是关于DjangoDjango中的模糊查询以及Q对象的简单使用的主要内容,如果未能解决你的问题,请参考以下文章

pymongo 中的模糊查询以及以某个值开始的模糊查询pymongo $regex /^

Django基础之模型(models)层

将关键字存储在查询集中,在结果查询集中提供带有 Q 对象的搜索命中以及搜索结果

全套学习!mysql模糊查询语句

DjangoDjango 如何支持 分组查询统计?

mysql第一天~mysql基础主要是DDLDMLDQL语句,以及重点掌握存存引擎查询(模糊查询)