使用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生成url短链接的方法
May 04 Python
numpy判断数值类型、过滤出数值型数据的方法
Jun 09 Python
Django 实现购物车功能的示例代码
Oct 08 Python
浅谈Django中view对数据库的调用方法
Jul 18 Python
Python学习笔记之迭代器和生成器用法实例详解
Aug 08 Python
Python 导入文件过程图解
Oct 15 Python
Python+Redis实现布隆过滤器
Dec 08 Python
Python enumerate内置库用法解析
Feb 24 Python
Python如何把Spark数据写入ElasticSearch
Apr 18 Python
初学者学习Python好还是Java好
May 26 Python
解决tensorflow模型压缩的问题_踩坑无数,总算搞定
Mar 02 Python
python缺失值填充方法示例代码
Dec 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获取mysql版本的几种方法小结
2008/03/25 PHP
php常用文件操作函数汇总
2014/11/22 PHP
微信公众平台之快递查询功能用法实例
2015/04/14 PHP
微信支付开发发货通知实例
2016/07/12 PHP
PHP preg_match实现正则表达式匹配功能【输出是否匹配及匹配值】
2017/07/19 PHP
从零开始学习jQuery (四) jQuery中操作元素的属性与样式
2011/02/23 Javascript
解决jquery操作checkbox火狐下第二次无法勾选问题
2014/02/10 Javascript
input禁止键盘及中文输入,但可以点击
2014/02/13 Javascript
使用原生JS实现弹出层特效
2014/12/22 Javascript
利用JS实现数字增长
2016/07/28 Javascript
js两种拼接字符串的简单方法(必看)
2016/09/02 Javascript
AngularJS入门教程之数据绑定用法示例
2016/11/01 Javascript
基于JS实现弹出一个隐藏的div窗口body页面变成灰色并且不可被编辑
2016/12/14 Javascript
DropDownList控件绑定数据源的三种方法
2016/12/24 Javascript
zTree实现节点修改的实时刷新功能
2017/03/20 Javascript
利用JS实现scroll自定义滚动效果详解
2017/10/17 Javascript
Node.js实现发送邮件功能
2017/11/06 Javascript
移动端吸顶fixbar的解决方案详解
2019/07/17 Javascript
基于vue+element实现全局loading过程详解
2020/07/10 Javascript
vue 二维码长按保存和复制内容操作
2020/09/22 Javascript
Python通过Django实现用户注册和邮箱验证功能代码
2017/12/11 Python
python3+PyQt5实现自定义窗口部件Counters
2018/04/20 Python
使用PM2+nginx部署python项目的方法示例
2018/11/07 Python
python 判断文件还是文件夹的简单实例
2019/06/10 Python
python切片(获取一个子列表(数组))详解
2019/08/09 Python
Python如何把十进制数转换成ip地址
2020/05/25 Python
Python+Opencv身份证号码区域提取及识别实现
2020/08/25 Python
利物浦足球俱乐部官方商店(美国):Liverpool FC US
2019/10/09 全球购物
解释一下钝化(Swap out)
2016/12/26 面试题
自我评价200字分享
2013/12/17 职场文书
五年后的职业生涯规划
2014/03/04 职场文书
教师自查自纠材料
2014/10/14 职场文书
玩手机检讨书1000字
2014/10/20 职场文书
理解深度学习之深度学习简介
2021/04/14 Python
python opencv旋转图片的使用方法
2021/06/04 Python
详解MongoDB排序时内存大小限制与创建索引的注意事项
2022/05/06 MongoDB