使用django的objects.filter()方法匹配多个关键字的方法


Posted in Python onJuly 18, 2019

介绍:

今天在使用django的时候忽然想用到,如何匹配多个关键字的操作,我们知道django有一个objects.filter()方法,我们可以通过如下一句代码实现匹配数据库中title包含key关键词的文章名称。

table.objects.filter(title__contains=key)

问题:

但是我的需求是我不仅仅只需要匹配出一个关键字的文章而是多个关键字的文章,那么我们该如何使用django的objects.filter()?

table.objects.filter(title__contains=key1)+.objects.filter(title__contains=key2)+....?

解决:

我们都知道在正常的sql语句中如果我们需要匹配多个关键字的title可以这样做

select title from data where title regexp 'key1|key2'
select title from data where title like '%key1%' or like '%key2%'

以上的两种sql语句都是选择出title属性中存在key1和key2的所有文章,那么django是不是也会有一种方法匹配多个关键字呢?当然有就是下面的代码

from django.db.models import Q
table.object.filter(Q(title__startswith='key1') | Q(title__startswith='key2'))

首先导入django的Q方法然后在filter中添加对应的匹配即可

以上这篇使用django的objects.filter()方法匹配多个关键字的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python sys.argv用法实例
May 28 Python
使用python3.5仿微软记事本notepad
Jun 15 Python
删除python pandas.DataFrame 的多重index实例
Jun 08 Python
使用pandas模块读取csv文件和excel表格,并用matplotlib画图的方法
Jun 22 Python
python K近邻算法的kd树实现
Sep 06 Python
使用Python-OpenCV向图片添加噪声的实现(高斯噪声、椒盐噪声)
May 28 Python
python中单下划线(_)和双下划线(__)的特殊用法
Aug 29 Python
mac在matplotlib中显示中文的操作方法
Mar 06 Python
基于matplotlib中ion()和ioff()的使用详解
Jun 16 Python
python3美化表格数据输出结果的实现代码
Apr 14 Python
关于python pygame游戏进行声音添加的技巧
Oct 24 Python
python基础之文件操作
Oct 24 Python
Django基础三之视图函数的使用方法
Jul 18 #Python
详解python实现小波变换的一个简单例子
Jul 18 #Python
Django基础知识 URL路由系统详解
Jul 18 #Python
对Django项目中的ORM映射与模糊查询的使用详解
Jul 18 #Python
Django基础知识 web框架的本质详解
Jul 18 #Python
django 使用全局搜索功能的实例详解
Jul 18 #Python
Django中Middleware中的函数详解
Jul 18 #Python
You might like
PHP 批量更新网页内容实现代码
2010/01/05 PHP
让PHP更快的提供文件下载的代码
2012/06/13 PHP
typecho插件编写教程(六):调用接口
2015/05/28 PHP
PHP邮箱验证示例教程
2016/06/01 PHP
Zend Framework校验器Zend_Validate用法详解
2016/12/09 PHP
双击滚屏-常用推荐
2006/11/29 Javascript
js如何设置在iframe框架中指定div不显示
2013/12/04 Javascript
jQuery热气球动画半透明背景的后台登录界面代码分享
2015/08/28 Javascript
jQuery实现带动画效果的多级下拉菜单代码
2015/09/08 Javascript
JS Canvas定时器模拟动态加载动画
2016/09/17 Javascript
Java中int与integer的区别(基本数据类型与引用数据类型)
2017/02/19 Javascript
vue-cli如何添加less 以及sass
2017/07/06 Javascript
node+vue实现用户注册和头像上传的实例代码
2017/07/20 Javascript
vue2里面ref的具体使用方法
2017/10/27 Javascript
如何使用JavaScript实现无缝滚动自动播放轮播图效果
2020/08/20 Javascript
python中使用xlrd、xlwt操作excel表格详解
2015/01/29 Python
浅谈python中的变量默认是什么类型
2016/09/11 Python
python脚本实现数据导出excel格式的简单方法(推荐)
2016/12/30 Python
Python实现重建二叉树的三种方法详解
2018/06/23 Python
基于wxPython的GUI实现输入对话框(1)
2019/02/27 Python
使用pandas读取文件的实现
2019/07/31 Python
Python+OpenCV实现将图像转换为二进制格式
2020/01/09 Python
如何在python开发工具PyCharm中搭建QtPy环境(教程详解)
2020/02/04 Python
Python解释器及PyCharm工具安装过程
2020/02/26 Python
python线程池 ThreadPoolExecutor 的用法示例
2020/10/10 Python
英国在线潜水商店:Simply Scuba
2019/03/25 全球购物
全球500多个机场的接送服务:Suntransfers
2019/06/03 全球购物
简单英文演讲稿
2014/01/01 职场文书
母亲七十大寿答谢词
2014/01/18 职场文书
春季防火方案
2014/05/10 职场文书
平安建设汇报材料
2014/12/29 职场文书
公务员年度个人总结
2015/02/12 职场文书
中学生清明节演讲稿
2015/03/18 职场文书
节约用水广告语60条
2019/11/14 职场文书
Pandas搭配lambda组合使用详解
2022/01/22 Python
JS前端使用canvas实现扩展物体类和事件派发
2022/08/05 Javascript