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实现获取某天是某个月中的第几周
Feb 11 Python
解析Python中while true的使用
Oct 13 Python
Python过滤列表用法实例分析
Apr 29 Python
python编程羊车门问题代码示例
Oct 25 Python
TF-IDF算法解析与Python实现方法详解
Nov 16 Python
python3爬取各类天气信息
Feb 24 Python
Python3爬虫使用Fidder实现APP爬取示例
Nov 27 Python
python爬虫selenium和phantomJs使用方法解析
Aug 08 Python
python 接口实现 供第三方调用的例子
Aug 13 Python
为什么黑客都用python(123个黑客必备的Python工具)
Jan 31 Python
Python如何实现的二分查找算法
May 27 Python
浅析Python 条件控制语句
Jul 15 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
哪吒敖丙传:新人物二哥敖乙出场 小敖丙奶气十足
2020/03/08 国漫
PHP实现读取一个1G的文件大小
2013/08/24 PHP
php时间戳转换的示例
2014/03/31 PHP
php实现猴子选大王问题算法实例
2015/04/20 PHP
laravel框架数据库操作、查询构建器、Eloquent ORM操作实例分析
2019/12/20 PHP
【消息提示组件】,兼容IE6/7&amp;&amp;FF2
2007/09/04 Javascript
解决iframe的frameborder在chrome/ff/ie下的差异
2010/08/12 Javascript
nodejs的require模块(文件模块/核心模块)及路径介绍
2013/01/14 NodeJs
iframe子父页面调用js函数示例
2013/11/07 Javascript
jquery cookie的用法总结
2013/11/18 Javascript
浅谈Javascript 执行顺序
2013/12/18 Javascript
JavaScript实现存储HTML字符串示例
2014/04/21 Javascript
js获取网页可见区域、正文以及屏幕分辨率的高度
2014/05/15 Javascript
jQuery实现向下滑出的平滑下拉菜单效果
2015/08/21 Javascript
jQuery旋转木马式幻灯片轮播特效
2015/12/04 Javascript
jQuery同步提交示例代码
2015/12/12 Javascript
jQuery实现下拉菜单(内容为时间)的实时更新及图表的随动更新的方法
2016/07/07 Javascript
javascript实现多张图片左右无缝滚动效果
2017/03/22 Javascript
微信小程序中上传图片并进行压缩的实现代码
2018/08/28 Javascript
layui监听工具栏的实例(操作列表按钮)
2019/09/10 Javascript
解决vue cli4升级sass-loader(v8)后报错问题
2020/07/30 Javascript
解决Python requests 报错方法集锦
2017/03/19 Python
python机器学习实战之K均值聚类
2017/12/20 Python
pycharm 将django中多个app放到同个文件夹apps的处理方法
2018/05/30 Python
Tensorflow 实现修改张量特定元素的值方法
2018/07/30 Python
python实现诗歌游戏(类继承)
2019/02/26 Python
Django数据库类库MySQLdb使用详解
2019/04/28 Python
python elasticsearch环境搭建详解
2019/09/02 Python
Python实现的爬取豆瓣电影信息功能案例
2019/09/15 Python
Python try except else使用详解
2021/01/12 Python
详解CSS3阴影 box-shadow的使用和技巧总结
2016/12/03 HTML / CSS
国际商务专业学生个人的自我评价
2013/09/28 职场文书
报案材料怎么写
2015/05/25 职场文书
Python基础知识学习之类的继承
2021/05/31 Python
详解Java实践之建造者模式
2021/06/18 Java/Android
Windows Server 版本 20H2 于 8 月 9 日停止支持,Win10 版本 21H1 将于 12 月结束支
2022/07/23 数码科技