使用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复制文件代码实现
Dec 23 Python
python的urllib模块显示下载进度示例
Jan 17 Python
Python实现的简单文件传输服务器和客户端
Apr 08 Python
Python变量和数据类型详解
Feb 15 Python
Python 函数基础知识汇总
Mar 09 Python
python matplotlib画图库学习绘制常用的图
Mar 19 Python
用python爬取历史天气数据的方法示例
Dec 30 Python
Windows下Pycharm远程连接虚拟机中Centos下的Python环境(图文教程详解)
Mar 19 Python
基于Python计算圆周率pi代码实例
Mar 25 Python
jupyter notebook 添加kernel permission denied的操作
Apr 21 Python
Django 解决由save方法引发的错误
May 21 Python
pyMySQL SQL语句传参问题,单个参数或多个参数说明
Jun 06 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
推荐几部必看的DC动画电影
2020/03/03 欧美动漫
PHP个人网站架设连环讲(一)
2006/10/09 PHP
在PHP中养成7个面向对象的好习惯
2010/01/28 PHP
dojo 之基础篇(三)之向服务器发送数据
2007/03/24 Javascript
extjs中grid中嵌入动态combobox的应用
2011/01/01 Javascript
jQuery中创建实例与原型继承揭秘
2011/12/21 Javascript
jQuery拖拽 & 弹出层 介绍与示例
2013/12/27 Javascript
JS设置获取cookies的方法
2014/01/26 Javascript
jQuery异步加载数据并添加事件示例
2014/08/24 Javascript
JavaScript动态改变div属性的实现方法
2015/07/22 Javascript
jQuery3.0中的buildFragment私有函数详解
2016/08/16 Javascript
Javascript 事件冒泡机制详细介绍
2016/10/10 Javascript
jQuery插件echarts实现的多折线图效果示例【附demo源码下载】
2017/03/04 Javascript
详解vue2路由vue-router配置(懒加载)
2017/04/08 Javascript
vue2 中如何实现动态表单增删改查实例
2017/06/09 Javascript
详解vue-cli + webpack 多页面实例配置优化方法
2017/07/13 Javascript
原生JS实现自定义下拉单选选择框功能
2018/10/12 Javascript
vue 集成 vis-network 实现网络拓扑图的方法
2019/08/07 Javascript
Js视频播放器插件Video.js使用方法详解
2020/02/04 Javascript
JavaScript仿京东秒杀倒计时
2020/03/17 Javascript
[02:49]2014DOTA2电竞也是体育项目! 势要把荣誉带回中国!
2014/07/20 DOTA
Django1.7+python 2.78+pycharm配置mysql数据库教程
2014/11/18 Python
Python计算字符宽度的方法
2016/06/14 Python
Python 比较两个数组的元素的异同方法
2017/08/17 Python
python ---lambda匿名函数介绍
2019/03/13 Python
python flask框架实现传数据到js的方法分析
2019/06/11 Python
对Python中TKinter模块中的Label组件实例详解
2019/06/14 Python
PyCharm+PyQt5+QtDesigner配置详解
2020/08/12 Python
python实现sm2和sm4国密(国家商用密码)算法的示例
2020/09/26 Python
CSS3+js实现简单的时钟特效
2015/03/18 HTML / CSS
高二化学教学反思
2014/01/30 职场文书
护理专业毕业生自荐信
2014/06/15 职场文书
2014年最新领导班子整改方案
2014/09/27 职场文书
学生检讨书范文
2014/10/30 职场文书
获奖感言一句话
2015/07/31 职场文书
Python turtle编写简单的球类小游戏
2022/03/31 Python