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实现单词拼写检查
Apr 25 Python
Python随机生成数据后插入到PostgreSQL
Jul 28 Python
Scrapy爬虫实例讲解_校花网
Oct 23 Python
python中requests和https使用简单示例
Jan 18 Python
Python基于递归算法实现的汉诺塔与Fibonacci数列示例
Apr 18 Python
opencv实现静态手势识别 opencv实现剪刀石头布游戏
Jan 22 Python
python读取.mat文件的数据及实例代码
Jul 12 Python
django admin 自定义替换change页面模板的方法
Aug 23 Python
Django后端发送小程序微信模板消息示例(服务通知)
Dec 17 Python
Python爬虫爬取糗事百科段子实例分享
Jul 31 Python
Python制作一个随机抽奖小工具的实现
Jul 07 Python
Python turtle编写简单的球类小游戏
Mar 31 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
从一个不错的留言本弄的mysql数据库操作类
2007/09/02 PHP
在Nginx上部署ThinkPHP项目教程
2015/02/02 PHP
thinkPHP模板中函数的使用方法示例
2016/11/30 PHP
降低PHP Redis内存占用
2017/03/23 PHP
Yii2 如何在modules中添加验证码的方法
2017/06/19 PHP
PHP中类型转换 ,常量,系统常量,魔术常量的详解
2017/10/26 PHP
PHP实现websocket通信的方法示例
2018/08/28 PHP
nodejs实现黑名单中间件设计
2014/06/17 NodeJs
javascript实现检验的各种规则
2015/07/31 Javascript
教你如何在Node.js中使用jQuery
2016/08/28 Javascript
jQuery扩展+xml实现表单验证功能的方法
2016/12/25 Javascript
Html5 js实现手风琴效果
2020/04/17 Javascript
Node.js微信 access_token ( jsapi_ticket ) 存取与刷新的示例
2017/09/30 Javascript
浅谈webpack打包过程中因为图片的路径导致的问题
2018/02/21 Javascript
js实现录音上传功能
2019/11/22 Javascript
浅谈vue中document.getElementById()拿到的是原值的问题
2020/07/26 Javascript
vue添加自定义右键菜单的完整实例
2020/12/08 Vue.js
python网络编程之数据传输UDP实例分析
2015/05/20 Python
Python中文字符串截取问题
2015/06/15 Python
将Python代码嵌入C++程序进行编写的实例
2015/07/31 Python
Python实现将json文件中向量写入Excel的方法
2018/03/26 Python
使用python脚本实现查询火车票工具
2018/07/19 Python
django url到views参数传递的实例
2019/07/19 Python
Python空间数据处理之GDAL读写遥感图像
2019/08/01 Python
python实现多进程按序号批量修改文件名的方法示例
2019/12/30 Python
谈谈python垃圾回收机制
2020/09/27 Python
纯CSS3实现鼠标滑过按钮动画第二节
2020/07/16 HTML / CSS
前台文员的岗位职责
2013/11/14 职场文书
行政总监岗位职责
2013/12/05 职场文书
养殖行业的创业计划书
2014/01/05 职场文书
毕业留言寄语大全
2014/04/10 职场文书
家具公司总经理岗位职责
2014/07/08 职场文书
2014单位领导班子四风对照检查材料思想汇报
2014/09/25 职场文书
小学校园广播稿集锦
2014/10/04 职场文书
拔河比赛队名及霸气口号
2015/12/24 职场文书
golang 实现对Map进行键值自定义排序
2021/04/28 Golang