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

作者:成为CTO 时间:2022-04-08 06:11:20 

介绍:

今天在使用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中添加对应的匹配即可

来源:https://blog.csdn.net/m0_43432638/article/details/89853351

标签:django,objects,filter,关键字
0
投稿

猜你喜欢

  • 基于vuex实现购物车功能

    2024-05-08 10:43:35
  • python内打印变量之%和f的实例

    2021-06-19 07:46:46
  • ODBC的保留字有哪些?

    2009-10-28 18:34:00
  • Python学习之流程控制与条件判断总结

    2023-08-20 13:37:02
  • mysql第一次安装成功后初始化密码操作步骤

    2024-01-19 22:20:45
  • 解决MySQL数据库链接超时报1129错误问题

    2024-01-17 12:15:04
  • mysql的定时任务实例教程

    2024-01-13 00:24:46
  • python面向对象入门教程之从代码复用开始(一)

    2022-07-17 21:54:13
  • 基于python 将列表作为参数传入函数时的测试与理解

    2023-02-07 19:51:18
  • MySQL实现行列转换

    2024-01-18 20:56:17
  • JS中判断null、undefined与NaN的方法

    2024-04-19 09:54:05
  • 详解如何使用nvm管理Node.js多版本

    2024-05-09 14:49:21
  • vue.js 表格分页ajax 异步加载数据

    2024-05-21 10:12:57
  • 10款最好的Python开发编辑器

    2022-02-14 07:35:28
  • 详解Python语法之模块Module

    2021-06-24 06:28:28
  • go语言base64用法实例

    2024-04-26 17:22:04
  • DIV+CSS高度自适应网页代码实例

    2008-09-20 08:00:00
  • Python通过正则库爬取淘宝商品信息代码实例

    2021-12-09 18:49:55
  • Python面向对象编程之类的运算

    2021-06-07 18:39:17
  • 深入了解MySQL的数据类型以及建库策略

    2008-12-17 16:16:00
  • asp之家 网络编程 m.aspxhome.com