https://blog.csdn.net/liuweiyuxiang/article/details/71104613

def search(request):

searchtype = request.POST.get("searchtype")

keyword = request.POST.get("keyword")

if searchtype == "all":

#多个字段模糊查询, 括号中的下划线是双下划线,双下划线前是字段名,双下划线后可以是icontains或contains,区别是是否大小写敏感,竖线是或的意思

sciencenews = models.Sciencenews.objects.filter(Q(title__icontains=keyword)\

|Q(content__icontains=keyword)|Q(author__icontains=keyword))

elif searchtype == "author":

#单个字段模糊查询

sciencenews = models.Sciencenews.objects.filter(author__icontains=keyword)

elif searchtype == "title":

sciencenews = models.Sciencenews.objects.filter(title__icontains=keyword)

elif searchtype == "content":

sciencenews = models.Sciencenews.objects.filter(content__icontains=keyword)

else:

#使用点连接的filter链表示and

sciencenews = models.Sciencenews.objects.filter(author__icontains=keyword).\

filter(title__icontains=keyword).filter(content__icontains=keyword)

return render(request,"show/index.html",{"param":sciencenews,"searchtype":searchtype,"keyword":keyword})

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

Django模糊查询的更多相关文章

  1. django ORM 增删改查 模糊查询 字段类型 及参数等

    ORM 相关 #sql中的表 #创建表: CREATE TABLE employee( id INT PRIMARY KEY auto_increment , name VARCHAR (), gen ...

  2. django中多个字段的模糊查询

    django中多个字段的模糊查询 使用Entity.objects.filter(name_contains='kris').filter(address='beijing') 这个方法是指名字包含k ...

  3. 【Django】Django中的模糊查询以及Q对象的简单使用

    Django中的模糊查询: 需要做一个查找的功能,所以需要使用到模糊查询. 使用方法是:字段名加上双下划线跟上contains或者icontains,icontains和contains表示是否区分大 ...

  4. django实战(二)--带多字段模糊查询的分页(也是不容易)

    上节我们实现了分页功能,这节我们要实现对模糊查询后的结果进行分页.(引入了bootstrap框架) urls.py from django.urls import path from . import ...

  5. Django ORM中的模糊查询

    ORM映射 什么是ORM映射?在笔者认为就是对SQL语句的封装,所写语句与SQL对应语句含义相同,使开发更加简单方便,不过也是存在弊端的,使程序运行效率下降.例如: UserInfo.objects. ...

  6. Django之CRM项目Day4-编辑客户 公私户 模糊查询

    1.增加客户 2.编辑客户 obj = models.Customer.objects.filter(pk=edit_id).first() form_obj = CustomerForm(insta ...

  7. 【Django+Element UI】使用一个接口文件,搞定分页获取数据,模糊查询后分页获取数据

    1:序列化获取数据的接口设计 1:分页获取序列化数据 2:是个能传参数的接口 class Society(APIView): def post(self, request): keywords = s ...

  8. Django 数据库查询集合(双下划线连表操作)

    Django是一款优秀的web框架,有着自己的ORM数据库模型.在项目中一直使用django数据库,写一篇文章专门记录一下数据库操作.略写django工程创建过程,详写查询过程.可以和sqlalche ...

  9. stark组件的分页,模糊查询,批量删除

    1.分页组件高阶 2.整合展示数据showlist类 3.stark组件之分页 3.stark组件之search模糊查询 4.action批量处理数据 4.总结 1.分页组件高阶 1.分页的class ...

随机推荐

  1. 58A

    #include <stdio.h> #include <string.h> int main() { char hel[6]="hello"; char ...

  2. emq共享订阅

    emqtt 试用(二)验证 emq 和 mosquito 的共享订阅 1. 多个订阅者都订阅以下主题形式 clientA 订阅  $queue/topic 发布主题名称为 topic1   clien ...

  3. case insensitive in php

    date: 2017-07-27 PHP的命名空间是否区分大小写? 结论:不区分大小写,与类名一样(不区分大小写). 不区分大小写的包括 函数名 方法名 类名 控制语句(if, else, for, ...

  4. python开源数据库gadfly安装排除错误

    从sourceforge.net上下载的,结果需要仔细看网页才能找到下载地址.下载zip包,它没有把下载地址放在显眼的地方. 安照提示,python setup.py结果提示出错.看帮助文件,需要运行 ...

  5. Amber TUTORIAL B5: Simulating the Green Fluorescent Protein

    Section 1: Preparing the PDB file 1EMA是本次教程所用的pdb,可以在PDB数据库下载. pdb4amber -i 1EMA.pdb -o gfp.pdb --dr ...

  6. Xcode $(SRCROOT)和$(PROJECT_DIR)区别

    $(SRCROOT)代表的时项目根目录下 $(PROJECT_DIR)代表的是整个项目 PS:往项目添加文件时,例如.a等,要先show in finder ,复制到项目中,然后再拖到xcode项目中 ...

  7. java多线程小题一瞥

    有如下线程类定义: public class MyThread extends Thread { private static int num = 0; public MyThread() { num ...

  8. 强力上攻后,在缓解期结束时,MACD将死叉,的后续情形

    强力上攻后,在缓解期结束时,MACD将死叉,的后续情形

  9. 011-Server服务器对象属性

    Transfer:第一个页面直接调用第二个页面,执行完第二个页面后不再返回第一个页面,立即响应到客户端浏览器.Execute:第一个页面直接调用第二个页面,执行完第二个页面后再返回第一个页面执行,最后 ...

  10. jQuery-二级导航

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...