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实现统计单词出现的个数
May 28 Python
TensorFlow打印tensor值的实现方法
Jul 27 Python
python使用Plotly绘图工具绘制柱状图
Apr 01 Python
Python玩转加密的技巧【推荐】
May 13 Python
Python3 文章标题关键字提取的例子
Aug 26 Python
pytest中文文档之编写断言
Sep 12 Python
Python算法中的时间复杂度问题
Nov 19 Python
tensorflow之获取tensor的shape作为max_pool的ksize实例
Jan 04 Python
python实现横向拼接图片
Mar 23 Python
python如何求100以内的素数
May 27 Python
Python获取android设备cpu和内存占用情况
Nov 15 Python
python 从list中随机取值的方法
Nov 16 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分页集合包括使用方法
2013/10/21 PHP
php中__destruct与register_shutdown_function执行的先后顺序问题
2014/10/17 PHP
php中随机函数mt_rand()与rand()性能对比分析
2014/12/01 PHP
laravel 中如何使用ajax和vue总结
2017/08/16 PHP
Yii框架where查询用法实例分析
2019/10/22 PHP
谈谈JavaScript中的函数与闭包
2013/04/14 Javascript
Jquery和JS用外部变量获取Ajax返回的参数值的方法实例(超简单)
2013/06/17 Javascript
JavaScript中的字符串操作详解
2013/11/12 Javascript
jquery文本框中的事件应用以输入邮箱为例
2014/05/06 Javascript
jquery中获取元素里某一特定子元素的代码
2014/12/02 Javascript
浅谈JavaScript字符串与数组
2015/06/03 Javascript
js+HTML5实现视频截图的方法
2015/06/16 Javascript
深入剖析JavaScript:Object类型
2016/05/10 Javascript
bootstrap中使用google prettify让代码高亮的方法
2016/10/21 Javascript
angularjs http与后台交互的实现示例
2018/12/21 Javascript
微信小程序实现授权登录
2019/05/15 Javascript
通过js给网页加上水印背景实例
2019/06/17 Javascript
Nuxt.js实战和配置详解
2019/08/05 Javascript
vue+element表格导出为Excel文件
2019/09/26 Javascript
vue实现吸顶、锚点和滚动高亮按钮效果
2019/10/21 Javascript
Python如何获取系统iops示例代码
2016/09/06 Python
python 限制函数调用次数的实例讲解
2018/04/21 Python
Python从数据库读取大量数据批量写入文件的方法
2018/12/10 Python
python如何统计代码运行的时长
2019/07/24 Python
python Plotly绘图工具的简单使用
2020/03/03 Python
Pytorch自定义Dataset和DataLoader去除不存在和空数据的操作
2021/03/03 Python
Magee 1866官网:Donegal粗花呢外套和大衣专家
2019/11/01 全球购物
加拿大领先家居家具网上购物:Aosom.ca
2020/05/27 全球购物
店长职务说明书
2014/02/04 职场文书
岗位说明书标准范本
2014/07/30 职场文书
网吧七夕活动策划方案
2014/08/31 职场文书
人身损害赔偿协议书范本
2014/09/27 职场文书
2014年度培训工作总结
2014/11/27 职场文书
《小乌鸦爱妈妈》教学反思
2016/02/19 职场文书
goland设置颜色和字体的操作
2021/05/05 Golang
Mysql忘记密码解决方法
2022/02/12 MySQL