django列表筛选功能的实现代码


Posted in Python onMarch 27, 2020

views,中设置请求的类型

class LawDetailView(View):
 def get(self, request, law_id):
  type = request.GET.get('type', '')
  law = Law.objects.get(id=law_id)

  return render(request, 'zcfg-detail.html', {
   'law': law,
   'type': type,
  })

templates,中设置:

<div class="col-lg-12" style="margin-bottom: 20px;">
    <a class="{% if type == '' %}btn btn-danger{% else %}btn btn-default{% endif %}" href="?type=" rel="external nofollow" role="button">全部</a>
    <a class="{% if type == 'fl' %}btn btn-danger{% else %}btn btn-default{% endif %}" href="?type=fl" rel="external nofollow" role="button">法律</a>
    <a class="{% if type == 'xzfg' %}btn btn-danger{% else %}btn btn-default{% endif %}" href="?type=xzfg" rel="external nofollow" role="button">行政法规</a>
    <a class="{% if type == 'bmgz' %}btn btn-danger{% else %}btn btn-default{% endif %}" href="?type=bmgz" rel="external nofollow" role="button">部门规章</a>
    <a class="{% if type == 'dfgz' %}btn btn-danger{% else %}btn btn-default{% endif %}" href="?type=dfgz" rel="external nofollow" role="button">地方规章</a>
</div>

补充知识:django 一种动态查询的便捷实现过程

问题引出

你可能遇到这种情况,在前端页面上有查询功能,要查询的输入选择有A,B,C等,可以通过任意一个查询,或者任意组合进行查询。

在后端,你可以使用request.GET['A']获取传入的数值。

我们需要判断哪个有输入,再在数据库中进行查询,这样比较麻烦。

解决方案

动态实现查询过程

kwargs = {}
if A is not None:
 kwargs['name__startWith'] = A
if B is not None:
 kwargs['address__contains'] = B
if C is not None:
 kwargs['mobile__endWith'] = C
...
...
personList = Person.objects.filter(**kwargs)
...

注:

A B C 等,为前端传输过来的数据

name address mobile 等,需为你要查询的表的属性字段

startWith contains endWith 等,为你要筛选的规则

Person 为model 表名

以上这篇django列表筛选功能的实现代码就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python help()函数用法详解
Mar 11 Python
跟老齐学Python之list和str比较
Sep 20 Python
Python的自动化部署模块Fabric的安装及使用指南
Jan 19 Python
Python多线程实现同步的四种方式
May 02 Python
Python实现的中国剩余定理算法示例
Aug 05 Python
Python实现正整数分解质因数操作示例
Aug 01 Python
python numpy 按行归一化的实例
Jan 21 Python
Python常用数据类型之间的转换总结
Sep 06 Python
Python 实现向word(docx)中输出
Feb 13 Python
浅谈Python __init__.py的作用
Oct 28 Python
Python 高级库15 个让新手爱不释手(推荐)
May 15 Python
给numpy.array增加维度的超简单方法
Jun 02 Python
python实现猜数游戏
Mar 27 #Python
手把手教你安装Windows版本的Tensorflow
Mar 26 #Python
python pandas.DataFrame.loc函数使用详解
Mar 26 #Python
Python计算指定日期是今年的第几天(三种方法)
Mar 26 #Python
Python函数默认参数常见问题及解决方案
Mar 26 #Python
Python内建序列通用操作6种实现方法
Mar 26 #Python
PyQt5 界面显示无响应的实现
Mar 26 #Python
You might like
PHP定时自动生成静态HTML的实现代码
2010/06/20 PHP
php include类文件超时问题处理
2015/02/06 PHP
PHP动态柱状图实现方法
2015/03/30 PHP
PHP图像处理类库MagickWand用法实例分析
2015/05/21 PHP
php在数据库抽象层简单使用PDO的方法
2015/11/03 PHP
Laravel实现定时任务的示例代码
2017/08/10 PHP
laravel5.6 框架操作数据 Eloquent ORM用法示例
2020/01/26 PHP
深入理解JavaScript中的传值与传引用
2013/12/09 Javascript
异步安全加载javascript文件的方法
2015/07/21 Javascript
Angularjs中$http以post请求通过消息体传递参数的实现方法
2016/08/05 Javascript
JavaScript常用正则验证函数实例小结【年龄,数字,Email,手机,URL,日期等】
2017/01/23 Javascript
详解使用nodeJs安装Vue-cli
2017/05/17 NodeJs
详解JS中统计函数执行次数与执行时间
2018/09/04 Javascript
Vuejs+vue-router打包+Nginx配置的实例
2018/09/20 Javascript
JS动态图片的实现方法完整示例
2020/01/13 Javascript
python监控网卡流量并使用graphite绘图的示例
2014/04/27 Python
基于python的Tkinter实现一个简易计算器
2015/12/31 Python
python中私有函数调用方法解密
2016/04/29 Python
Python 读取某个目录下所有的文件实例
2018/06/23 Python
利用Python求阴影部分的面积实例代码
2018/12/05 Python
在 Jupyter 中重新导入特定的 Python 文件(场景分析)
2019/10/27 Python
Python selenium 加载并保存QQ群成员,去除其群主、管理员信息的示例代码
2020/05/28 Python
Python非单向递归函数如何返回全部结果
2020/12/18 Python
实例教程 一款纯css3实现的数字统计游戏
2014/11/10 HTML / CSS
Can a struct inherit from another struct? (结构体能继承结构体吗)
2016/09/25 面试题
英语专业毕业生自荐信范文
2013/12/31 职场文书
长安大学毕业生自我鉴定
2014/01/17 职场文书
自我鉴定四大框架
2014/01/17 职场文书
趣味比赛活动方案
2014/02/15 职场文书
党支部公开承诺践诺书
2014/03/28 职场文书
银行竞聘报告范文
2014/11/06 职场文书
介绍信样本
2015/01/31 职场文书
Spring Cache和EhCache实现缓存管理方式
2021/06/15 Java/Android
深入理解margin塌陷和margin合并的解决方案
2021/06/26 HTML / CSS
Python函数式编程中itertools模块详解
2021/09/15 Python
Mysql多层子查询示例代码(收藏夹案例)
2022/03/31 MySQL